- 1
#define long long long
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−12
#define long long long
*них 32 бит сломает (ну до они уже почти вымерли). *них 64 бита преимущественно не сломает - потому что там хак совместимости с 32 бит стоит: long == long long == 64bit.
и еще гцц будет кидать ворнинги на "%ld" vs "%lld" в принтфах. в зависимости где и как определен size_t - может тоже будут ворнинги.
long long и long -- разные типы. Хотя внутри могут быть одинаковыми.
https://wandbox.org/permlink/dTUrQICJ8B3bzbq8
> *них 32 бит сломает (ну до они уже почти вымерли).
А что там? Вроди тоже long -> 64bit
> А что там? Вроди тоже long -> 64bit
забываешь старое неписаное правило `sizeof(long) == sizeof(void*)` на которое кучи людей полагаются.
PS
https://en.wikipedia.org/wiki/64-bit_computing#64-bit_data_models
Впизду. На венде оно не выполняется. Да и сейчас уже есть uintptr_t, выбитый на скрижалях стандарта.
> sizeof(long) >= sizeof(void*)
Ты имел в виду sizeof(long) <= sizeof(void*)? :)
*на некоторых платформах