Причина, по которой я застрял в этом, заключается в том, как С обрабатывает массивы, что связано с указателями, в которых я новичок. Это мой случай (не совсем моя проблема, а упрощенный случай):
char *keywords[k_num_of_keywords];
for(int i = 0; i < k_num_of_keywords; i++) {
char temp[] = "float";
keywords[i] = temp;
}
В этом случае он поместил бы float во все индексы, но, что более важно, тот же адрес, где находится строка «float». Мой случай немного отличается, потому что я хочу автоматизировать инициализацию нового массива char для каждого индекса, но по-прежнему использовать одну и ту же переменную, а не тот же адрес в каждом индексе. Как я могу сделать это в цикле for?