Мне интересно, есть ли способ сканировать массив на совпадение, используя strcmp. Я знаю, что параметры, переданные в strcmp, являются C-строками. Так что-то подобное не сработает:
strcmp
strcmp(arrayofstrings[x], c-string)
Это будет работать до тех пор, пока аргументы могут быть уменьшены до типа const char*.
const char*
char *a[] = { "Hello", "Hello" }; // Array of pointers to c strings if ( !strcmp(a[0],a[1]) ){ // true in this case }
Если вы пытаетесь выполнить поиск по всему массиву, а не просто сравнивать два элемента, вам понадобится цикл.
const int N = 10; const char * desired = "desiredString"; char * arrayOfStrings[N]; // You should initialize the elements // in arrayOfStrings[] before searching // Searching an unsorted array is O(N) for(i = 0; i < N; i++) { if(strcmp(arrayOfStrings[i], desired) == 0) { printf("Found %s.", desired); break; } }