Хитрое объявление указателей в Си |
Здравствуйте, гость ( Вход | Регистрация )
Хитрое объявление указателей в Си |
Iron Bug |
30.6.2011, 6:30
Сообщение
#11
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
|
|
|
Litkevich Yuriy |
30.6.2011, 13:27
Сообщение
#12
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Litkevich Yuriy |
30.6.2011, 13:31
Сообщение
#13
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Kagami |
30.6.2011, 17:50
Сообщение
#14
|
Старейший участник Группа: Участник Сообщений: 601 Регистрация: 2.2.2009 Пользователь №: 523 Спасибо сказали: 101 раз(а) Репутация: 9 |
Техника, известная как «Чтение по спирали/по часовой стрелке» (“Clockwise/Spiral Rule”) позволяет любому программисту разобрать любое объявление языка Си - http://habrahabr.ru/blogs/cpp/100104/
|
|
|
Iron Bug |
30.6.2011, 19:10
Сообщение
#15
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
чёт мне даже в голову не приходило, что и такое может быть
указатель на функцию, возвращающую int, с параметром char массив указателей на функции, возвращающие int, с параметром char
указатель на массив указателей на функции, возвращающие int, с параметром char ну и так далее, вариантов много. всякие там const по необходимости добавляются точно так же, как описано выше. P.S. блин, аж сама запуталась, правила пару раз Сообщение отредактировал Iron Bug - 1.7.2011, 7:09 |
|
|
Litkevich Yuriy |
1.7.2011, 6:01
Сообщение
#16
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Техника, известная как «Чтение по спирали/по часовой стрелке» (”Clockwise/Spiral Rule”) позволяет любому программисту разобрать любое объявление языка Си - http://habrahabr.ru/blogs/cpp/100104/ нашёл там в комментариях интересную штуку, объясняет объявление. только нужно писать так:int (*foo)(char) вместо int (*foo)(char bar) Объявление из первого сообщения: declare listnames as array of const pointer to const pointer to const char
|
|
|
Iron Bug |
1.7.2011, 7:11
Сообщение
#17
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
только нужно писать так: int (*foo)(char) вместо int (*foo)(char bar) без разницы. компилятор всё равно отбрасывает имя переменной в декларации. зато вот у подсказок будет дополнительная информация в виде названия, в котором обычно поясняется назначение переменной. когда смотришь на заголовочник, типы параметров ни о чём не говорят. когда видишь названия переменных - сразу всё становится понятно. Сообщение отредактировал Iron Bug - 1.7.2011, 7:12 |
|
|
Алексей1153 |
1.7.2011, 19:59
Сообщение
#18
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Цитата P.S. блин, аж сама запуталась, правила пару раз для того и придумали его величество typedef ))) |
|
|
Текстовая версия | Сейчас: 28.1.2025, 8:00 |