tgoop.com/extremecode/1216
Create:
Last Update:
Last Update:
#define FOUR 2+2
int x = FOUR * FOUR;
// Ожидаем 16, получаем 8
int* p = (int*)malloc(sizeof(int));
*p = 42;
free(p);
*p = 100;
// работает... иногда
int i = 5;
int j = i++ + ++i;
printf("%d", j);
// Непредсказуемый результат
#define SQUARE(x) x * x
int a = 3;
int b = SQUARE(a + 1);
// Результат: 7, а не 16
int a;
scanf("%d ", &a);
// Программа "зависает" в ожидании ввода символа
// так как пробел после %d требует ввод лишнего символа
struct SelfCall {
SelfCall() : SelfCall() {}
};
SelfCall sc;
// Бесконечная рекурсия при создании объекта
auto a = true + true + true;
std::cout << a;
// 3
Ахахахах, че не смеетесь? Не смешно? Это C/C++
Давайте, эксперты из каментов, оправдывайтесь. Почему один язык при неопределенном поведении сразу считается "говном", а на другом таком же языке написана операционная система с помощью которой ты в принципе имеешь возможность прочитать этот пост.
Джаваскрипт и сишка, братские языки
BY The ExtremeCode Times
Share with your friend now:
tgoop.com/extremecode/1216