首页 > 代码库 > 如何判断一个数为无符号数还是有符号数
如何判断一个数为无符号数还是有符号数
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");
如何判断一个数为无符号数还是有符号数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。