Это продолжение другого question.
Рассмотрим следующий код:
char *hi = "hello";
char *array1[3] =
{
hi,
"world",
"there."
};
Он не компилируется до моего удивления (видимо, я не знаю синтаксиса Си, как я думал), и генерирует следующую ошибку:
error: initializer element is not constant
Если я изменю char * на char [], он компилирует fine:
char hi[] = "hello";
char *array1[3] =
{
hi,
"world",
"there."
};
Может кто-нибудь объяснить мне, почему?