#include <stdio.h>

int main(){

    short s;  // short 형 선언

    char c;  // char 형 선언

    s = 257;  // short 에 257 assign

    c = s     // char 에 short 값 대입

    s = c   // 다시 short 에 char 값 대입

    printf("s값 : \n",s);  // short 값 출력

    printf("c값 : \n",c);  // char 값 출력

    return 0;

}

 

이대로 컴파일을 했는데

 

short 값 과 char 값이 모두 1로 출력되.

 

short 가 2byte 이고 char가 1바이트인건 알고있는데

 

short 값을 char 에 넣었다가 다시 short 값에 대입한후

 

출력했을때 short 와 char 값이 모두 1이 나오는지 궁금해

 

도저히 모르겠다

 

존나 간단한거라는데 모르겠어