unsigned short a = 0xffff;
short b = 0xffff;
printf("unsigned short 'a' = %d\n", a);
printf("short 'b' = %d\n", b);
a는 0xffff를 unsigned short 로 표현했고
b는 0xffff를 short로 표현했는데
결과에는
a=65535
b=-1 이렇게 나오네요
제가 프로그래밍 기초를 이번에 처음 들어서 ㅠㅠ 잘 이해가 안되는데
두개 차이는 부호가 있고 없고차이고
범위는 같지만 a는 -x부터 x까지 범위라면
b는 0부터 2x까지 범위를 가진다
이렇게만 알고있거든요.. 이해가잘안가서요 왜 다르게 나오는거죠?ㅜㅜ
근데 0xFFFF라는 표현은 무엇인지 궁금해요.
저장된 방식은 둘다 FFFF인데, 그냥 연산할 때 해석이 다른거임 ㅡㅡ)