inline问题
定义了一个inline函数:
static inline endian_swap(unsigned short v)
{
return ((v << | (v >> );
}
在代码中:
unsigned int v = 0x12345678;
v = endian_swap(v);
gcc编译,带参数 -Wall,竟然没有警告?!
这样的话,inline跟宏定义:
#define (v) (((v) << | ((v) >> )
就没有区别了啊,我觉得应该有一个警告的,就是32位截成16位的警告,不知为啥没有。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
上面的头型图标都是数字八
不看清、、
回复 3# kgdvoso
"8 )" 都变了,网页怎么这样啊
-Wconversion