프로그래밍

 3198, 1/160 회원가입  로그인  
   신네임
   short의 범위에 대해서

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=2898 [복사]


#include<stdio.h>
#include<stdlib.h>
main()
{
      short a, b;
      printf("정수 2개 입력\n");
      scanf("%d%d", &a, &b);
      printf("a=%d, b=%d", a, b);
      system("pause");
}

c언어 배운지 하루되었는데요 책에서 예제보고 따라했는데 short 범위가 -32768~32767 이라고 나와있어서 이걸 초과하는 수를 입력하면 어떻게 될까하고 실행해서 -32769 32768 로 입력을 시켜봤는데 a=0 b=-32768 이 나오더라고요

b는 대충 이해가 되겠는데 a 에서 왜 0이 나오는지 알려주세요

  Hit : 5113     Date : 2011/02/26 06:02



    
신네임 같은 음수값을 입력하니까 ex) -2 -2 값이 a=-1 b=-2 이렇게 나오는건 또 왜그런지도 알려주세요 궁금해서 죽겠습니다 으허흐헝 2011/02/26  
Executable 일반적인 경우라면 말이죠..
-32769 는 32767 이 들어가야 하고
-2 는 -2 가 그대로 들어가야하는데
지금 a 에 1이 더해진 값이 계속 출력되고 있는거 같네요.
올리신 코드는 문제가 없어보여요.
뭐가 문제인지는 모르겠는데 정상적인 경우는 아닌듯 보이네요..
2011/02/27  
신네임 아하.. 감사합니다! 2011/02/27