Тестовая программка:
#include <iostream>
#include <typeinfo>
using namespace std;
int main()
{
int c;
char* s1;
char s2[10];
enum Lang {rus, eng, none};
Lang lan = rus;
cout << typeid(c).name() << endl;
cout << typeid(&c).name() << endl;
cout << typeid(s1).name() << endl;
cout << typeid(&s1).name() << endl;
cout << typeid(s2).name() << endl;
cout << typeid(&s2).name() << endl;
cout << typeid(lan).name() << endl;
cout << typeid(&lan).name() << endl;
return 0;
}
Компилим, запускаем, вывод:
i
Pi
Pc
PPc
A10_c
PA10_c
Z4mainE4Lang
PZ4mainE4Lang
Я думал, будет что-то типа int, char и т.д. Это фишка g++ или я что-то забыл? Как понять эти загадочные записи, особенно для enum'a? Где про это можно почитать?
p.s. пробовал на версиях 4.1.1 и 3.4.6.
Ответ на:
комментарий
от Begemoth
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Интересное имя класса после оператора typeid (2004)
- Форум [c++] typeid. Заставить возвращать число? (2011)
- Форум Переназначение ссылки (2014)
- Форум gcc cos(1)=0.540302 (2011)
- Форум C++/exceptions - деление на ноль не ловиццо, почему? (2006)
- Форум C++ простая программа (2014)
- Форум C++ iostream::failbit (2005)
- Форум std::cout вместе с std::wcout (2009)
- Форум Не компилируется программа :( (2008)
- Форум проблемы с std::variant of lambda (2020)