728x90
C언어의 수 체계
- C언어에서 2진수로 데이터를 저장. 최소 단위는 1bit
- 1bit는 오직 2가지만 표현할 수 있기 때문에 이를 8개나 16개씩 묶어 8진수나 16진수로 표현하는 것이 편리
- 10진법으로 10~15는 16진법에서 A~F로 표기
- 표현하고자 하는 값 앞에 접두사를 붙이는 방식으로 진법을 표시한다.
- 8진법 : 0 (숫자 영)
- 16진법 : 0x (숫자 영과 알파벳 엑스. x의 대소문자는 구분하지 않는다)
- example) C 프로그램에서 10진수 90을 16진수로 표현하면 0x5a, 8진수로 표현하면 0132
- prinf 함수에서 format 지시어 옵션을 사용해 진법 변환을 할 수 있다.
- %o는 8진수를, %d는 10진수를, %x는 16진수를 지시 (line5)
- 지시어에 #을 삽입하면 진수를 나타내는 접두사를 포함해 프린트함 (line8)
- line 5와 같이 접두사가 없는 경우 몇진수 수인지 명확하게 알 수 없음
자료형
- 크게 정수형과 실수형으로 구분자료형 크기
자료형 크기 정수형 char
1byte short
2byte int
4byte long
4byte long long
8byte 실수형 float
4byte double
8byte
정수형
- 정수형은 하나의 bit를 부호 정보로 사용하는 signed와 부호 정보 없이 모든 bit을 값을 표현하는데 사용하는 unsigned가 있음
- unsigned는 양수 범위를 signed보다 두배 표현할 수 있음
- example) signed char는 -128
127의 범위를 표현 가능하고, unsigned char는 0255의 범위를 표현할 수 있음 - 구분되지 않는 상수의 타입을 알려주는 suffix를 붙여줄 수 있음
- 10 → signed int
- 10u → unsigned int
- 10l → long
- 10ul → unsigned long
- 10ll → long long
- 10ull → unsigned long long
- example) int, unsigned 등 모든 정수형 데이터가 10을 표현할 수 있음.
'프로그래밍 언어 > C' 카테고리의 다른 글
[C++] pair class 사용법 (0) | 2022.09.18 |
---|---|
함수 (0) | 2022.07.30 |
C 연산자 (0) | 2022.07.30 |
printf와 scanf (0) | 2022.07.30 |