Как определить массив?
const char *myArr[3] = {"one", "two", "three"};
В MS C++ 6.0 у меня так не выходит. Может я чо не так делаю?
On 2001-09-12 0954, Anonymous wrote
В стандартном С массив можно определить при объявлении, например
const char *myArr[3] = {"one", "two", "three"};
В MS C++ 6.0 у меня так не выходит. Может я чо не так делаю?
</BLOCKQUOTE></FONT></TD></TR><TR><TD><HR></TD></TR></TABLE>
Тут есть ошибка.
Вот правильноconst char myArr[3][255] = {"one", "two", "three"};
Единственное чего я не помню, что надо ставить вперед, а что после, или число элементов массива[3] или длину каждого элемента[255]. Может надо так писать myArr[255][3].
Это не верно...
* - это указатель, а ты хочешь константу...
убери звёздочку и всё будет оК...
Holly
...убери звезду!
const char *months[] =
{"Jan", "Feb", "Mar", "Apr",
"May", "Jun", "Jul", "Aug",
"Sep", "Oct", "Nov", "Dec"};
и в квадратных скобках размерность массива.
Пример.
int array1 [10];
long array2 [1000];
const char *myArr[3]={"one", "two", "three"};
AfxMessageBox(myArr[0]);
AfxMessageBox(myArr[1]);
AfxMessageBox(myArr[2]);
имеем пойнтер на одномерный массив пойнтеров, всё пучком! Имя двумерного массива mass[3][255] это и есть пойнтер на массив из трёх пойнтеров. Тока здесь он конст. Ну и чего такого?
Звезду убирать не надо(объявляется же массив указателей на 3 элемента, т.е. массив строк из 3-х элементов,т.к. указатели и строки в С++ одно и тоже), убрать надо модификатор const
Цитата:
On 2001-11-16 0848, Serg wrote
Надо писать имя типа, имя идентификатора,
и в квадратных скобках размерность массива.
Пример.
int array1 [10];
long array2 [1000];
В С размер массива можно не указывать, если он инициализируется сразу. У меня всё работает.