short 와 int 변환 의 작은 예
#include <stdio.h>
int main()
{
short a=-1;
unsigned int b=a;
int c=a;
printf("%x
", b);
printf("%d
", c);
a=1;
b=a;
c=a;
printf("%x
", b);
printf("%d
", c);
return 0;
}
출력 은 ffffff-111 설명 입 니 다.short 형 데 이 터 를 int 또는 unsigned int 형 데이터 에 할당 할 때 short 형 데이터 가 마이너스 이면 확 장 된 비트 위 치 는 모두 1 입 니 다.만약 short 형 데이터 가 정확 하 다 면,확 장 된 비트 위 치 는 모두 0 입 니 다.
#include <stdio.h>
int main()
{
unsigned short a=-1;
unsigned int b=a;
int c=a;
printf("%x
", b);
printf("%d
", c);
a=1;
b=a;
c=a;
printf("%x
", b);
printf("%d
", c);
return 0;
}
출력 은 ffff 6553511 설명 으로 unsigned short 형 데 이 터 를 int 또는 unsigned int 형 데이터 에 할당 할 때 확 장 된 비트 비트 위 치 는 모두 0 입 니 다.