Итак, я работаю над этой игрой палача. У меня небольшие проблемы с массивами и указателями. Это то, что у меня есть:Возврат элемента из массива в функции C
char* getword(int index);
int main (void) {
char *secword = getword(1);
printf("%s ", *secword);
}
char *getword(int index)
{
char *words[8]= {'bye', 'hi','what', 'cat', 'dog',
'bird', 'air', 'water', 'fire'};
return words[index];
}
Я продолжаю получать ошибку сегментации (сброс ядра).
Строки в C используют двойные кавычки. В этом массиве также есть 9 строк, а не 8. –
Да, как вам удалось добраться до segfault ?? –
используйте 'char const *' вместо 'char *', и вам либо нужно использовать 'printf ("% s ", secword);' или 'printf ("% c ", * secword);'. Обратите внимание на сообщения компилятора; если есть какие-либо предупреждения или ошибки, даже не беспокойтесь о запуске вашей программы - сначала исправьте ошибки. –