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

use*_*330 6 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;
}
Run Code Online (Sandbox Code Playgroud)

i手段int,但什么PiPPi意味着什么呢?Pointer int

Mig*_*Prz 7

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


Cap*_*ous 6

它表示指向整数的指针和指向整数指针的指针.