We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
how to get a string input and compare it . say for example: if i get a string input"LED ON " and i want to compare it with a list of string say "LED ON ",LED OFF,FAN ON,FAN OFF.....
give me the commands and some sample programs .please.
yes i have not anounced it to the release but the docs are in progress
maybes i do an exe or other
i m' not got the name but thinksing about jon++
"otherwise" is somthing but not same
"missing" is nothin
Sample program from bsearch man page:
#include <stdio.h> #include <stdlib.h> #include <string.h> struct mi { int nr; char *name; } months[] = { { 1, "jan" }, { 2, "feb" }, { 3, "mar" }, { 4, "apr" }, { 5, "may" }, { 6, "jun" }, { 7, "jul" }, { 8, "aug" }, { 9, "sep" }, {10, "oct" }, {11, "nov" }, {12, "dec" } }; #define nr_of_months (sizeof(months)/sizeof(months[0])) static int compmi(const void *m1, const void *m2) { struct mi *mi1 = (struct mi *) m1; struct mi *mi2 = (struct mi *) m2; return strcmp(mi1->name, mi2->name); } int main(int argc, char **argv) { int i; qsort(months, nr_of_months, sizeof(struct mi), compmi); for (i = 1; i < argc; i++) { struct mi key, *res; key.name = argv[i]; res = bsearch(&key, months, nr_of_months, sizeof(struct mi), compmi); if (res == NULL) printf("'%s': unknown month\n", argv[i]); else printf("%s: month #%d\n", res->name, res->nr); } return 0; }
Convert struct to store a function pointer. If the table is sorted from the beginning, there will be no need for qsort().
Note that the besearch solution above is good for really, really large tables since every doubling of the table will only add one more strcmp() call. Most monitor programs or similar doesn't have enough commands to require a constant-time or logarithmic-time solution. A for loop through a table or consecutive if statements will normally be ok.