Что будет, если попытаться скомпидировать, а потом попытаться запустить следующую программу?
#include <cstdio>
#include <cstdlib>
int main() {
printf("%d\n", ((int*|2)+3);
return EXIT_SUCCESS;
}
Решение: Ошибка компиляции из-за:
Неправильного оператора | между int* и 2.
Несоответствия формата %d и типа int*.
Если исправить синтаксис:
printf("%d\n", ((int*)2)+3 );
Компилятор выдаст предупреждение о несоответствии %d и int*.
При запуске — неопределённое поведение.
Верное решение:
printf("%d\n", 2 + 3); // Выведет 5
@codeof_art