C++中输出变(判断)量类型

一般要用到头文件

#include<typeinfo>

像python这样的语言要判断一个变量类型是很简单的直接type(变量名)就可以。而C++中是这样用的:

#include<iostream>
#include<typeinfo>
using namespace std;
int main(){
    enum Color {red,yellow,blue,white,black};
    enum Day {Monday,Tuesday,Wendesday,Thursday,Friday};
    Color color;
    Day Mon=Monday;
    int i,j,k;
    char a,b,c;
    double A,B,C;
    cout<<"Type of color:"<<typeid(color).name()<<endl;
    cout<<"Type of Mon:"<<typeid(Mon).name()<<endl;
    cout<<"Type of i:"<<typeid(i).name()<<endl;
    cout<<"Type of A:"<<typeid(A).name()<<endl;
    
    
    cout<<"whether the type of i is int: "<<(typeid(int)==typeid(i))<<endl;
    cout<<"whether the type of i is double: "<<(typeid(double)==typeid(i))<<endl;
    return 0;
}

上面代码我们定义的变量类型有枚举类型(Color和Day),int,double,char,代码输出是:

Type of color:Z4mainE5Color
Type of Mon:Z4mainE3Day
Type of i:i
Type of A:d
whether the type of i is int: 1
whether the type of i is double: 0

这里可以看出typeid().name()输出的类型名是简称int是i,double是d,但是对于枚举类型是全称的。

如代码所示我们也可以直接使用判断语句来判断:(typeid(double)==typeid(i))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值