Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что значит это выражение? char buff[50] = {0};

Серега Цумарев Ученик (38), закрыт 13 лет назад
Лучший ответ
nephalim Мыслитель (6642) 13 лет назад
Объявлен символьный массив из 50 элементов и всем им назначено нулевое значение.

так как ответил предыдущий отвечающий выглядит так:
char buff [50];
buff[0]=0;

и да будет известно отвечающему после меня что массив знаков и переменная типа string это две разные вещи.
Источник: С++ это мегасуперская вещь!!!
Остальные ответы
MaximusFk Гуру (2892) 13 лет назад
массив типа char размером 50 и инициализированно первое значение нулем
Женя Трапезников Знаток (452) 13 лет назад
Объявление массива buff из 50 элементов, и инициализация первого элемента значением 0.
Равносилоно строчке:
char buff[ 50 ] = "";
Так как конец строчки в языке C определяется нулевым символом, то если нулевой символ стоит в первой позиции, то это пустая строчка
Источник: g++
Николай Веселуха Высший разум (385395) 13 лет назад
char a[50] = {0};
char b[50] = {NULL};
char c[50] = {'\0'};

Это три эквивалентных записи символьного статического массива в языках C/C++.
Все записи означают, что все 50 элементов массива инициализированы символом конца строки. То есть нулевое значение, не путать с символом '0'.
Автор nephalim абсолютно прав! И на счёт массива, его инициализации, и типа string, которого в Си вовсе нет!!
Похожие вопросы