|
Язык программирования Си. Издание 3-е, исправленноеНапример int x[] = { 1, 3, 5 }; объявляет и инициализирует x как одномерный массив с тремя элементами, поскольку размер не был указан, а список состоит из трех инициализаторов. float y[4][3] = { { 1, 3, 5 }, { 2, 4, 6 }, { 3, 5, 7 }, }; представляет собой инициализацию с полным набором фигурных скобок: 1, 3 и 5 инициализируют первую строку в массиве у[0], т. е. y[0][0], у[0][1] и y[0][2]. Аналогично инициализируются следующие две строки: y[1] и y[2]. Инициализаторов не хватило на весь массив, поэтому элементы строки y[3] будут нулевыми. В точности тот же результат был бы достигнут с помощью следующего объявления: float у[4][3] = { 1, 3, 5, 2, 4, 6, 3, 5, 7 }; Инициализатор для y начинается с левой фигурной скобки, но для y[0] скобки нет, поэтому из списка будут взяты три элемента. Аналогично по три элемента будут взяты для y[1], а затем и для y[2]. В float у[4][3] = { { 1 }, { 2 }, { 3 }, { 4 } }; инициализируется первый столбец матрицы y, все же другие элементы остаются нулевыми. Наконец, char msg[] = "Синтаксическая ошибка в строке %s\n"; представляет собой пример массива символов, элементы которого инициализируются с помощью строки; в его размере учитывается и завершающий NULL-символ. A8.8 ...» |
Код для вставки книги в блог HTML
phpBB
текст
|
|