VIDEOS 》 Code Snippets
Download this episode's my sample source code HERE.
And here is the source code for a quick reference.
/* testcli.c * The Linux Channel * Author: Kiran Kankipati * Updated: 05-Jul-2017 */ #include <stdio.h> #include <stdlib.h> #include <string.h> unsigned char command_buf[500]; void main() { while(1) { printf("testcli> "); scanf("%s", command_buf); //gets(command_buf); if(!strcmp(command_buf, "ifconfig")) { system("ifconfig"); } else if(!strcmp(command_buf, "date")) { system("date"); } else if(!strcmp(command_buf, "ls")) { system("ls"); } else if(!strcmp(command_buf, "exit") || !strcmp(command_buf, "quit") || !strcmp(command_buf, "e") || !strcmp(command_buf, "q")) { break; } } }
/* testcli_readline.c * The Linux Channel * Author: Kiran Kankipati * Updated: 05-Jul-2017 */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <readline/readline.h> #include <readline/history.h> //Install if not installed !! //sudo apt-get install libreadline6 libreadline6-dev unsigned char *command_buf; void main() { while(1) { command_buf = readline("testcli_readline> "); if(strlen(command_buf)>0) { add_history(command_buf); } if(!strcmp(command_buf, "ifconfig")) { system("ifconfig"); } else if(!strcmp(command_buf, "date")) { system("date"); } else if(!strcmp(command_buf, "ls")) { system("ls"); } else if(!strcmp(command_buf, "exit") || !strcmp(command_buf, "quit") || !strcmp(command_buf, "e") || !strcmp(command_buf, "q")) { break; } } }
/* testcli_readline.php * The Linux Channel * Author: Kiran Kankipati * Updated: 05-Jul-2017 */ $prompt = `hostname`; $prompt .= "#testcli_readline> "; while(1) { $command_buf = readline($prompt); if(strlen($command_buf)>0) { readline_add_history($command_buf); } if(!strcmp($command_buf, "ifconfig")) { system("ifconfig"); } else if(!strcmp($command_buf, "date")) { system("date"); } else if(!strcmp($command_buf, "ls")) { system("ls"); } else if(!strcmp($command_buf, "exit") || !strcmp($command_buf, "quit") || !strcmp($command_buf, "e") || !strcmp($command_buf, "q")) { break; } }
Download this episode's my sample source code HERE.
And here is the source code for a quick reference.
/* lookuptable.c - coding a look-up-table in C * The Linux Channel * Author: Kiran Kankipati * Updated: 16-mar-2017 */ #include <stdio.h> #include <stdbool.h> typedef struct __mytable_ { int value; char name[50]; bool enable; } mytable_t; #define MAX_ENTRIES 100 mytable_t mytable_array[MAX_ENTRIES]; bool init_mytable() { int i=0; for(i=0;i<MAX_ENTRIES;i++) { mytable_array[i].enable=false; } } void print_mytable() { int i=0; printf("mytable_array[] contents\n"); for(i=0;i<MAX_ENTRIES;i++) { if(mytable_array[i].enable==true) printf("[%d] - value: %d\n", i, mytable_array[i].value); } printf("------------------------\n\n"); } void add_item_mytable(int value) { int i=0; //check for duplicate ? for(i=0;i<MAX_ENTRIES;i++) { if(mytable_array[i].enable==true) { if(mytable_array[i].value==value) { return; } } } //add item for(i=0;i<MAX_ENTRIES;i++) { if(mytable_array[i].enable==false) { mytable_array[i].value=value; mytable_array[i].enable=true; return; } } } void del_item_mytable(int value) { int i=0; //check for match ? for(i=0;i<MAX_ENTRIES;i++) { if(mytable_array[i].enable==true) { if(mytable_array[i].value==value) { mytable_array[i].enable=false; return; } } } } int find_item_mytable(int value) { int i=0; //check for match ? for(i=0;i<MAX_ENTRIES;i++) { if(mytable_array[i].enable==true) { if(mytable_array[i].value==value) { return i; } } } } void main() { init_mytable(); print_mytable(); add_item_mytable(5); print_mytable(); add_item_mytable(3); print_mytable(); add_item_mytable(1); print_mytable(); add_item_mytable(2); print_mytable(); del_item_mytable(3); print_mytable(); printf("value: %d is in position [%d]\n", 1, find_item_mytable(1)); }
Suggested Topics:
Video Episodes :: Linux (user-space), Systems Architecture and Networking
Thursday' 19-Oct-2023
Saturday' 13-Mar-2021
Friday' 27-Oct-2023
Thursday' 19-Oct-2023
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Sunday' 29-Oct-2023
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Saturday' 13-Mar-2021
Join The Linux Channel :: Facebook Group ↗
Visit The Linux Channel :: on Youtube ↗
💗 Help shape the future: Sponsor/Donate
推荐主题:
Featured Video:
Trending Video:
Saturday' 13-Mar-2021
Recommended Video: