理解typeid()。name()的输出

时间:2013-04-28 21:26:26

标签: c++ types

我正在检查某些类型的变量并得到一些令人困惑的结果:

#include <iostream>
#include <typeinfo>
using namespace std;

int main(void) {
    int number = 5;
    int* pointer = &number;

    cout << typeid(number).name() << endl;      // i
    cout << typeid(pointer).name() << endl;     // Pi
    cout << typeid(&pointer).name() << endl;    // PPi

    return 0;
}

i表示int,但PiPPi是什么意思? Pointer int

2 个答案:

答案 0 :(得分:6)

它分别表示指向整数的指针和指向整数的指针。

答案 1 :(得分:5)

  • i:整数
  • Pi:指向整数变量的指针
  • Ppi:指向整数变量指针的指针