10.C언어_정수형 변수
정수형 변수
I. 설명
변수형태 |
크기 |
설명 |
short |
2Byte |
-32,768 ~ 32,767 |
unsigned short |
0 ~ 65,535 | |
int |
4Byte(32bit) |
-2,147,483,648 ~ 2,147,483,647 |
unsigned int |
0 ~ 4,294,967,295 | |
long |
4Byte(32bit) |
-2,147,483,648L ~ 2147483647L |
unsigned log |
0UL ~ 4294967295UL | |
__int64 |
8byte(64bit) |
-9223372036854775808i64 ~ 9223372036854775807i64 |
unsigned __int64 |
0ui64 ~ 18446744073709551615ui64 |
이 변수을 벗어난 값은 자동으로 이 범위의 값으로 변환됨
ex) int in=2,147,483,647; 이면 출력값 in는 -2,147,483,648 임.
II. 문제
- 정수형 변수에 다양한 값을 대입하고 출력하는 프로그램을 만들어라
III. 순서도
IV. 예제
V. 설명
행번호 |
설 명 |
11~14 |
int형 변수 선언 |
17,22 |
int형 in에 2,147,483,648 대입, 표현범위(-2,147,483,648 ~ 2,147,483,647)를 초과하여 -2,147,483,648을 출력 |
18,23 |
unsigned in형 unin에 2,147,483,648 대입, 표현범위(0 ~ 4,294,967,295)에 해당하므로 2,147,483,648 출력(*결과 참조) |
19,24 |
int형 a에 'a'문자 대입, 아스키코드 'a'=97이므로 97을 출력 |
20,25 |
int형 A에 'A'문자 대입, 아스키코드 'A'=65이므로 65를 출력 |
VI. 실행결과
warning: this decimal constant is unsigned only in ISO C90
이라는 Error가 발생하여, 언어표준을 C90에 맞게 컴파일 하라는데...
# gcc -std=gnu89 Ex011.c -o Ex011.exe 뭐 이래도 마찬가지로 Error다.
궂이 int형을 넘치게 쓸일 있나 싶어 패스!!
VII. 추가
- 없음.
// 끝.