Skip to content

Instantly share code, notes, and snippets.

@pcostesi
Created May 13, 2011 23:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pcostesi/971507 to your computer and use it in GitHub Desktop.
Save pcostesi/971507 to your computer and use it in GitHub Desktop.
int cmp_for_sort(const void * c1, const void * c2){
return strcmp(*(char **) c1, *(char **) c2);
}
int cmp_for_search(const void * c1, const void * c2){
return strcmp((char *) c1, *(char **) c2);
}
int
getCommand()
{
int c;
int i = 0;
char buffer[150];
char *validCommands[] = {"bomb", "quit", "save"};
qsort(validCommands, 3, sizeof(char *), cmp_for_sort);
printf("=> ");
while ((c = getchar()) != EOF && c != '\n') {
buffer[i++] = c;
}
buffer[i] = '\0';
return bsearch(buffer, validCommands, 3, sizeof(char *), cmp_for_search) != NULL;
}
int
main(void)
{
int c;
c = getCommand();
printf("%d\n", c);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment