[C/C++] signed 형과 unsigned 형의 비교
char 형이나 short 형의 자료 일 경우 얘기다. signed 자료형에 - 값을 넣으니까 무조건 자리를 0xff로 채운다.char 형은 0xffffffxx를 만들고, short 형은 0xffffxxxx를 만들더라.왜 그럴까... 이유를 따지는건 머리아파 넘어가지만 문제가 발생하는건 넘길수가 없다.단순 사칙연산은 별 탈 없이 잘 수행하는데 unsigned 형과 signed 형의 비교가 들어갈 때 오류를 내게 된다. char c1 = 0xff;unsigned char c2 = 0xff if ( c1 == c2 ) ...else ... 위 문장은 else 쪽을 실행하게 된다. 젠장
2014.02.24