Инициализация трехмерного массива - PullRequest
0 голосов
/ 29 ноября 2010

В небольшом фрагменте кода, который я смотрю, 3D-массив был инициализирован так:

static const char codeset[6][256][10] = {
    [0] = { [0x20] = " ",
    [0x21] = "!",
    [0x22] = """,
    [0x23] = "#",
}};

(Инициализация остальных ячеек продолжается, я обрезал его, чтобы показать что-то читаемое.)

Это не компилируется. Это должно? Что здесь происходит?

Ответы [ 3 ]

3 голосов
/ 29 ноября 2010

Вы используете инициализаторы C99, но ваш компилятор не поддерживает C99 или C99 не включен.

2 голосов
/ 29 ноября 2010

Вы пытаетесь использовать инициализаторы C99 , но, скорее всего, ваш компилятор не совместим с C99, иначе он будет работать.

0 голосов
/ 29 ноября 2010

Как и предполагалось, он пытается создать «алфавит» для XML-строки данных ASCII.Символ "(двойная кавычка) в xml представлен как".Таким образом, группа [0] [0 - 255] является xml.

Она выглядит как таблица эквивалентности.Он переводится из XML в ASCII или как угодно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...