http://blog.csdn.net/yysdsyl/article/details/1885829
1. 利用函数重载
发信人: Enderson (小强), 信区: C_Cpp
标 题: Re: 如何判断一个变量是有符号还是无符号的?
发信站: 兵马俑BBS (Wed Nov 7 21:25:45 2007), 本站(bbs.xjtu.edu.cn)
void f(int val)
{
std::cout << "singned" << std::endl;
}
void f(unsigned int val)
{
std::cout << "unsigned" << std::endl;
}
在判断a是否有符号整数的地方调用函数f(a)就可以了吧
2. 通过改变符号位判断
发信人: phylips (星星||决定了,为老婆孩子奋斗), 信区: C_Cpp
标 题: Re: 如何判断一个变量是有符号还是无符号的?
发信站: 兵马俑BBS (Wed Nov 7 17:16:02 2007), 本站(bbs.xjtu.edu.cn)
那这样可以不
把A进行一个位运算,将最高位置1,判断是否大于0
A = A|(1 << 31);
if(A > 0)
printf("unsigned");
else
printf("signed");
时间: 2024-10-26 13:17:23