c语言的类型比较-创新互联

c语言中有typeof,用来判断变量的类型,例如

兴城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
int i;

typeof(i) k;   //等价于int k;

//对于struct类型依然可用,例如

struct Sample
{
int i;
int j;
float k;
} ;

struct Sample stA;
typeof(stA) stB;
//那么stA和stB的类型一致,但是却不能用
if (typeof(stA)  == typeof(stB) )这种判断方式,因为转义过来就是
if (struct Sample == struct Sample)  //错误

但是gcc中提供了一种内置宏  __builtin_types_compatible_p 
那么就可以用如下方式来判断两者是否一致

if (  __builtin_types_compatible_p (typeof(stA), typeof(stB) == 1)
{
    //type same
}else
{
    //type wrong

}

参考gcc文档:

Other Builtins - Using the GNU Compiler Collection (GCC)

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文标题:c语言的类型比较-创新互联
标题URL:http://scyanting.com/article/dohiie.html