Я новичок в C, и в C все иначе, чем в любом другом языке, на котором я научился. В своей домашней работе я хочу создать массив символов, которые указывают на массив символов, но вместо того, чтобы создавать многомерный массив символов, я полагаю, что у меня будет больше контроля, и я буду создавать массивы символов и помещать каждый отдельный в индексы исходный массив символов:
char keywords[10];
keywords[0] = "float";
Приведенный выше пример служит для пояснения и представляет собой простой случай. Но мой вопрос связан с исследованиями, которые я проводил, и что-то меня смущает. Обычно это работает на других языках, но в C это будет:
char *keyword[10];
keywords[0] = "float";
Но когда я хочу отправить его через функцию, почему это необходимо:
void function(char **keyword); //function prototype
Разве не достаточно просто передать указатель массива?