26/03/2009 23:12
Си и аффтары
Спасибо всем, кто ответил на предыдущий пост. Собственно, вот уже 20 лет я периодически возвращаюсь к вопросу: кто сошел с ума: я или гг. Р. Берри и Б.Микинз.
Первой моей книжкой по языку Си был шедевр указанных авторов "Язык Си. Введение для профессионалов" (англ. "A Book on C"), М.: Финансы и статистика, 1988. Я её дочитал до 74-й страницы. На этой странице есть такая фраза:
Теперь нам требуется массив из 26 ссылок, каждая из которых указывает на некий массив из семи ссылок. Эти же ссылки в свою очередь указывают на нужные строки. Все это можно описать следующим образом:
char (*lptr[ROWMAX])[26];
(ROWMAX ранее определено как 7).
И все эти 20 лет я смутно подозревал, что что-то здесь не так. Теперь я в этом уверен!
И еще вопрос. Как правильно определить на C то, что словами сказано выше? Мой вариант:
char *lptr[26][ROWMAX];
Я прав?
P.S. Хоть убейте, не понимаю, зачем наворачивать такие конструкции. Но очень хочется дочитать книжку до конца. :)))
Первой моей книжкой по языку Си был шедевр указанных авторов "Язык Си. Введение для профессионалов" (англ. "A Book on C"), М.: Финансы и статистика, 1988. Я её дочитал до 74-й страницы. На этой странице есть такая фраза:
Теперь нам требуется массив из 26 ссылок, каждая из которых указывает на некий массив из семи ссылок. Эти же ссылки в свою очередь указывают на нужные строки. Все это можно описать следующим образом:
char (*lptr[ROWMAX])[26];
(ROWMAX ранее определено как 7).
И все эти 20 лет я смутно подозревал, что что-то здесь не так. Теперь я в этом уверен!
И еще вопрос. Как правильно определить на C то, что словами сказано выше? Мой вариант:
char *lptr[26][ROWMAX];
Я прав?
P.S. Хоть убейте, не понимаю, зачем наворачивать такие конструкции. Но очень хочется дочитать книжку до конца. :)))