Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Вниз

Хумор в программной реализации...   Найти похожие ветки 

 
wicked ©   (2006-02-23 14:12) [0]

#define Bytes
#define KBytes * 1024 Bytes
#define MBytes * 1024 KBytes
#define GBytes * 1024 MBytes
///
char buf[5 MBytes];
///


ЗЫ подозреваю, что баян, но вот, вспомнилось....


 
Джо ©   (2006-02-23 14:31) [1]

Мощно задвинул :)


 
jack128 ©   (2006-02-23 15:53) [2]

На ту же тему
#define private public


 
Igorek ©   (2006-02-23 17:05) [3]

#define #define //


 
Джо ©   (2006-02-23 17:19) [4]

> [3] Igorek ©   (23.02.06 17:05)
> #define #define //

Правильно. Defin"ы должны умереть :)


 
pasha_golub ©   (2006-02-23 17:31) [5]

Блин, а я не догнал. :-( Поясните кто-нить, а?


 
Igorek ©   (2006-02-23 17:32) [6]


> pasha_golub ©   (23.02.06 17:31) [5]

Что именно?


 
wicked ©   (2006-02-23 18:34) [7]

> Igorek ©   (23.02.06 17:05) [3]
а не сработало.... билдер сказал "низзя, хочу идентификатор"....


 
umbra ©   (2006-02-23 18:36) [8]

#define what I_want


 
jack128 ©   (2006-02-23 18:36) [9]

pasha_golub ©   (23.02.06 17:31) [5]
#define  XXX YYY означает, что препроцессор заменит XXX на YYY
В примере wicked после всех подстановок в результате получится такой код:
сhar buf[5 * 1024 * 1024];

мой код опубликует все private поля и методы
а код Игорька просто закоментирует все define"ы


 
Igorek ©   (2006-02-23 21:22) [10]


> а код Игорька просто закоментирует все define"ы

Не, викед прав - будет ошибка. Я когда писал, сам толком не представлял как оно будет работать. :)
И сейчас не понимаю, почему не так, как ты написал.


 
Джо ©   (2006-02-23 21:36) [11]

> [10] Igorek ©   (23.02.06 21:22)
> И сейчас не понимаю, почему не так, как ты написал.

конструкция требует в третьей позиции идентификатор, а не комментарий (пустой токен, если можно так выразиться), т.е, "идентификатор", действительно, пропущен.


 
wicked ©   (2006-02-23 23:35) [12]

> Джо ©   (23.02.06 21:36) [11]

> конструкция требует в третьей позиции идентификатор, а не
> комментарий (пустой токен, если можно так выразиться), т.
> е, "идентификатор", действительно, пропущен.

не в третьей, а во второй.... на что заменять, препроцессору, в общем то, глубоко все равно.... а вот что заменять - нет..... см. заглавный постинг, #define Bytes


 
Джо ©   (2006-02-23 23:43) [13]

> [12] wicked ©   (23.02.06 23:35)

Действительно, так, похоже и есть.


 
Piter ©   (2006-02-24 02:58) [14]

jack128 ©   (23.02.06 18:36) [9]
В примере wicked после всех подстановок в результате получится такой код:
сhar buf[5 * 1024 * 1024];


это понятно, но в чем прикол? Типа хумор же...

С #define private public понятнее.

А тут что?

Ну можно еще так:

Mbytes = array[1.. 1024 * 1024] of Byte;
...
var
 s: array[1..5] of MBytes;


Ну и... где смеяться?..


 
pasha_golub ©   (2006-02-24 07:31) [15]


> Piter ©   (24.02.06 02:58) [14]


> сhar buf[5 * 1024 * 1024];
>
> это понятно, но в чем прикол? Типа хумор же...


Вот я тоже понял, что оно так подставиться. Почему и спрашиваю, где слово "лопата"? :)



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.014 c
1-1139819308
Maverick
2006-02-13 11:28
2006.03.19
Сохранение пользовательских настроек


15-1140725504
Piter
2006-02-23 23:11
2006.03.19
Обрушилась крыша на Басманном рынке


15-1140510663
ORMADA
2006-02-21 11:31
2006.03.19
MyToDo-ведение изменений м/у версиями


2-1141105829
Mike48
2006-02-28 08:50
2006.03.19
Нужна программа распаковщик файлов с дискеты


2-1141455206
guru-ru
2006-03-04 09:53
2006.03.19
Многопоточность.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский