Я тестировал код на Coliru и получил странный результат. Я просмотрел код и смог воспроизвести его с помощью этого простого фрагмента кода :
int main()
{
π
}
Вывод на g ++:
лязг:
Например, использование только pi
(без адреса) показывает ожидаемый результат:
main.cpp:3:5: error: 'pi' was not declared in this scope
pi;
^
Я пытался воспроизвести это на своей машине, используя g ++ 4.9.2 и другие сайты, но не смог.
Это какая-то ошибка на сайте, какой-то конфиг этих компиляторов?
И почему только при использовании оператора адресации ( &
) этот символ отображается?
&tm;
? У тебя появляется ™? Если это так, ваш вывод интерпретируется как HTML.(╯°□°)╯︵ ┻━┻
Ответы:
Это ошибка на сайте, так как вывод компилятора не экранирован должным образом. Компилятор должен выводить
π
, но это действительный HTML, создавая символ пи, который вы видите.источник
π
- это html-код для π. Похоже, кто-то забыл как следует убежать от вещей.источник