Подтвердить что ты не робот

Странные константы

Я видел их в реальном коде:

#define SCREEN_DIMENSIONS 2
#define THREE_THOUSAND_FIVE_HUNDRED_TWENTY_TWO 3522

Какая самая странная константа, которую вы когда-либо видели?

P.S. И, конечно, мой любимый в JScript:

bool b;
switch (b.ToString().length) {
case 4: // true
  ...
  break;
case 5:  // false
  ...
  break;
)
4b9b3361

Ответ 2

#define NUMBER_OF_CONSTANTS_NOT_INCLUDING_THIS_ONE  4
#define NUMBER_OF_CONSTANTS_INCLUDING_THE_LAST_ONE_BUT_NOT_THIS_ONE  5

Ответ 3

#define TEN 9

Ответ 4

#define private public

Ответ 5

char *myGodItsFullOfStars = "********************************************************************************";

Ответ 6

Чтобы соответствовать Indiana H.B. 246:

#ifdef INDIANA
const float PI = 3.2;
#endif

Ответ 7

//Thank you Crash Macro!!!
#define CRASH (*((void*) 0))++

Я действительно использовал этот проект в проекте, где я занимался программированием с помощью симулятора, у которого не было отладчика. Это произошло примерно так:

if(v == SOMETHING_WRONG)
    CRASH;

Затем мне пришлось потратить несколько часов, глядя на дампы памяти в шестнадцатеричном редакторе, чтобы узнать, что произошло. (также комментарий был обязательным).

Ответ 8

#define TRUE 0
#define FALSE 1

Ответ 9

Мы жаловались другому программисту о том, что у него слишком много "магических чисел" в его коде и что он должен превратить их в константы. Мы должны иметь более конкретные...

Private Const MAGIC_NUMBER as Integer = 7;

Ответ 10

Не константа, но связанная с вашими измерениями = 2 замечание: когда я был в UW, man-страница для диспетчера очереди печати имела что-то вроде:

--duplex n   Print on this many sides of the page.  Acceptable values
             (until we obtain more versatile printers) are 1 and 2.

Ответ 11

Не то же самое, но я работал над базой кода, где переменные и метки, названные в честь улиц и пабов в Глазго. Таким образом, вы можете написать код типа

Goto :TheBowserBar

Макет кода имел смысл только в том случае, если вы знали город очень хорошо - странно.

Ответ 12

Из The Daily WTF:

private String paula = "Brillant";

Ответ 13

С первых дней C:

#define PI 3.14159 /* should the value of PI ever change */

Да, я знаю, что они имели в виду константу, но мне интересно, какое экстремальное поведение изменения вселенной должно произойти для изменения фактического значения PI.

Ответ 14

Здесь моя личная любимая форма TDWTF: pascal.h

#define procedure void
#define then
#define is
#define not !=
#define begin {
#define end }

Ответ 15

Я не уверен, что это считается, но

#define COMMA ,

Я не помню специфику, но это было необходимо для вставки аргументов шаблона.

Ответ 16

public bool bTrue = true;

Ответ 17

Вот хороший, который я помню с моей последней работы. Он включал следующие комментарии.

'Hard coded to be more dynamic
Const DYNAMIC_VAL = 1

Ответ 18

Это приложение, которое использует LOT с конверсиями ton/lbs:

const ONE_TON_IN_LBS = 1999.6

Ответ 19

Из DailyWTF

#define whilst while

Лично в Authorware (который допускал пробелы в именах переменных)

booBoolMoveOnIsOn True := 1

Ответ 20

/** SUBVERSION REVISION OF THE FILE */
private String SVN_REVISION = 34234;

Я до сих пор не понял этого. Он был замусорен в несколько десятков файлов и никогда не использовался.

Ответ 21

Никогда не видел, но очень хочу:

#define MAGIC "more magic"

У нас есть куча волшебных #defines здесь, которые мы используем в качестве ядра лицензионных ключей...

Ответ 22

Я когда-то работал на школьном совете в качестве программиста отчетов COBOL. Чтобы соответствовать директивам о десегрегации, необходимо было отслеживать посещаемость и участие в гонке. В результате многие из отчетов содержали подсчеты студентов в категориях "Белый", "Черный", "Латиноамериканский", "Азиатка", "Родной американец" и т.д.

По какой-то причине я подумал, что было бы забавно глобально изменить все имена категорий на их... скажем, сленговые эквиваленты?... и затем попросите босса помочь какой-либо помощи, отлаживая проблему переполнения счетчика. Дискретизация мешает мне записывать, каковы фактические имена, но вы получаете дрейф.

Принял его пару минут, чтобы заметить. Его реакция была смешной, как ад. Черт, рядом, меня уволили, хотя.

Ответ 23

#define ADMIN "Admin"

Ответ 24

которые выглядят так:

void FAR PASCAL function()...

где:

#define FAR far
#define PASCAL __stdcall

Ответ 26

#define WTF "What the... ?"