一、类型含意
bool: b
char: c
signed char: a
unsigned char: h
(signed) short (int): s
unsigned short (int): t
(signed) (int): i
unsigned (int): j
(signed) long (int): l
unsigned long (int): m
(signed) long long (int): x
unsigned long long (int): y
float: f
double: d
long double: e
二、实验
#include <iostream>
#include <typeinfo>
using namespace std;
int main()
{
bool a1;char a2;signed char a3;unsigned char a4;
short a5;unsigned short a6;
int a7;unsigned int a8;
long a9;unsigned long a10;long long a11;unsigned long long a12;
float a13;
double a14;
long double a15;
cout<<typeid(a1).name()<<"表示:bool"<<endl;
cout<<typeid(a2).name()<<"表示:char"<<endl;
cout<<typeid(a3).name()<<"表示:signed char"<<endl;
cout<<typeid(a4).name()<<"表示:unsigned char"<<endl;
cout<<typeid(a5).name()<<"表示:short"<<endl;
cout<<typeid(a6).name()<<"表示:unsigned short"<<endl;
cout<<typeid(a7).name()<<"表示:int"<<endl;
cout<<typeid(a8).name()<<"表示:unsigned int"<<endl;
cout<<typeid(a9).name()<<"表示:long"<<endl;
cout<<typeid(a10).name()<<"表示:unsigned long"<<endl;
cout<<typeid(a11).name()<<"表示:long long"<<endl;
cout<<typeid(a12).name()<<"表示:unsigned long long"<<endl;
cout<<typeid(a13).name()<<"表示:float"<<endl;
cout<<typeid(a14).name()<<"表示:double"<<endl;
cout<<typeid(a15).name()<<"表示:long double"<<endl;
int* aa;
cout<<typeid(aa).name()<<"表示:int指针类型"<<endl;
cout<<typeid(*aa).name()<<"表示:int"<<endl;
char** bb;
cout<<typeid(bb).name()<<"表示:"<<endl;
cout<<typeid(*bb).name()<<"表示:char指针类型"<<endl;
cout<<typeid(**bb).name()<<"表示:char"<<endl;
char* cc=new char;
cout<<typeid(cc).name()<<"表示:char指针类型"<<endl;
cout<<typeid(*cc).name()<<"表示:char"<<endl;
string* dd=new string("abc");
cout<<typeid(dd).name()<<"表示:string指针类型"<<endl;
cout<<typeid(*dd).name()<<"表示:string"<<endl;
char* ee=new char[3]{'a','b','c'};
cout<<ee<<endl;
cout<<&ee<<endl;
cout<<ee[0]<<endl;
cout<<&ee<<endl;
cout<<&ee[2]<<endl;
cout<<"字符串1"<<endl;
string *ss=new string[2]();
cout<<ss<<endl;
cout<<&ss<<endl;
cout<<"字符串2"<<endl;
string *sss=new string[2]{"nihao","abc"};
cout<<sss<<endl;
cout<<*sss<<endl;
cout<<*(sss+1)<<endl;
cout<<&sss<<endl;
}
三、结果
b表示:bool
c表示:char
a表示:signed char
h表示:unsigned char
s表示:short
t表示:unsigned short
i表示:int
j表示:unsigned int
l表示:long
m表示:unsigned long
x表示:long long
y表示:unsigned long long
f表示:float
d表示:double
e表示:long double
Pi表示:int指针类型
i表示:int
PPc表示:
Pc表示:char指针类型
c表示:char
Pc表示:char指针类型
c表示:char
PNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE表示:string指针类型
NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE表示:string
abc
0x7fff86c0adc0
a
0x7fff86c0adc0
c
字符串1
0x14e2ef8
0x7fff86c0adb8
字符串2
0x14e2f48
nihao
abc
0x7fff86c0adb0