에..
-2147483648L 하니까
경고 안 나오던데
어차피 long형도 4바이트 아닌가요
이건 왜 그런가요? -_-a;;
아까 해보고 신기해서;; 헐헐
$ cat > t.c
int main(void)
{
long int i = -2147483648L;
return 0;
}
$ gcc t.c
t.c: In function `main':
t.c:3: warning: decimal constant is so large that it is unsigned
int 범위가 -2147483648 에서 2147483647인데-21
int 범위가 -2147483648 에서 2147483647인데
-2147483648 은 -와 2147483648로 나눈후
2147483648의 음수값을 구하려고 하다보니 범위를 벗어난다고 나오는 듯합니다.
-2147483647 - 1 해주면 경고메시지는 안뜨는군요.
에..-2147483648L 하니까경고 안 나오던데어차피 lo
에..
-2147483648L 하니까
경고 안 나오던데
어차피 long형도 4바이트 아닌가요
이건 왜 그런가요? -_-a;;
아까 해보고 신기해서;; 헐헐
http://home.postech.ac.kr/~sodomau
[quote="sodomau"]에..-2147483648L 하니까
이 진단 메시지는 unsigend type 이 됨에 유의하라는 친절한
배려 정도입니다.
오래전에 쓴 글입니다만...
http://www.woong.org/board/?doc=bbs/gnuboard.php&bo_table=hclc&page=1&wr_id=13
위의 angpoo 님께서 언급해주신 방법은 portable 한 <limits.h>
구현시에 반드시 필요한 것입니다.
그럼...
--
Jun, Woong (woong at gmail.com)
http://www.woong.org
아.. 나오는군요;아깐 왜 안 나온다고 생각했지;; 쿠..쿨럭;;
아.. 나오는군요;
아깐 왜 안 나온다고 생각했지;; 쿠..쿨럭;;
잠시 먼가에 홀렸었나 봅니다; 헐헐;
http://home.postech.ac.kr/~sodomau
댓글 달기