坐井以观天
分类: LINUX
2013-04-07 15:16:14
原文地址:判断一个整形变量是无符号数还是有符号数 作者:zooyo
看到这道题有点意思, 主要考对符号位的理解和对类型的解释问题.
首先int型是有符号的, 最高位作为符号位, 如果是负数, 最高位则为1, 正数符号位是0.
而unsigned int是把所有位都参与计数, 所以无符号数肯定是一个正整数.
我能只能设计一段代码, 或者一个宏函数. 而不能设计一个函数来验证, 因为函数接收参数, 是什么类型, 编译器就解释为什么类型, 做强制类型转换. 所以只能在当前函数内判断.
我们设计一个宏函数: