浅析C语言中typeof关键字用法
前言
C语言中typeof关键字是用来定义变量数据类型的。在linux内核源代码中广泛使用。
下面是Linux内核源代码中一个关于typeof实例:
#definemin(x,y)({\
typeof(x)_min1=(x);\
typeof(y)_min2=(y);\
(void)(&_min1==&_min2);\
_min1<_min2?_min1:_min2;})
1.当x的类型为是int时_min1变量的数据类型则为int。
2.当x为一个表达式时(例:x=3-4),_min1变量的数据类型为这个表达式结果的数据类型。
.......
3.typeof括号中也可以是函数
例:
intfunction(int,int); typeof(function(1.2))val;
此时val的数据类型为函数function(int,int)返回值的数据类型 ,即int类型。(注意:typeof并不会执行函数function)。
typeof关键字有点类似与c++中的decltype关键字。
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短