您的位置:首页 > 编程语言 > C语言/C++

C语言中怎样判断一个整形数是有符号数还是无符号数

2013-09-21 13:15 344 查看
原理:当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。

实例代码:

#include <stdio.h>
#include <iostream>

int main()
{
int i=100;
int j=-1;
if(i<0){
printf("i 是有符号数\n");
}else{
if((j-i)>0){ //如果i是无符号数,则在计算过程中j就会自动转为无符号数,则j应该比i大;如果i是有符号数,则j应该比i小
printf("i 是无符号数\n");
}else{
printf("i 是有符号数\n");
}
}
printf("----------------------------\n");
unsigned int a=100;
int b=-1;
if(a<0){
printf("a 是有符号数\n");
}else{
if((b-a)>0){ //如果a是无符号数,则在计算过程中b就会自动转为无符号数,则b应该比a大;如果a是有符号数,则b应该比a小
printf("a 是无符号数\n");
}else{
printf("a 是有符号数\n");
}
}
system("pause");
return 0;
}


运行截图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: