자료형, 데이터 타입
문장(문자열), 숫자(정수, 실수), 문자
정확하게는 문장형 데이터 타입은 존재하지 않는다. 문자열이 맞는 말인데 이 말은 문자들의 배열이라는 뜻이다.
문자형 데이터 타입은 따로 존재하지 않는다.
자료형마다 메모리 크기가 있다.
정수형 데이터 타입
- char(character) - 1byte (8bit) : -128 ~ 127 (2의 8제곱을 음수 양수 대역폭으로 나눈것)
- short - 2byte (16bit) : -32,768 ~ 32,767
- int - 4byte (32bit) : -21억 ~ 21억
- long long - 8byte ( 64bit)
각 데이터 타입의 대역폭 만큼만 출력 가능하다.
예외적으로 데이터 타입 앞에 unsigned를 붙이면 음수 대역폭을 사용하지 않고 그 수치만큼 양수 대역폭으로 늘어난다.
-> char는 127까지만 사용 가능하지만 앞에 unsigned를 붙이면 255까지 쓸 수 있다.
실수형 데이터 타입
float
double
10과 10.0은 우리 눈에는 같지만 컴퓨터 관점에서는 다른 자료다.
"Hello"
'H', 'e', 'l', 'l', 'o'
서식지정자
%d - char, short, int : 부호 있는 10진 정수
%ld - long : 부호 있는 10진 정수
%lld - long long : 부호 있는 10진 정수
%u - unsigned int : 부호 없는 10진 정수
%o - unsigned int : 부호 없는 8진 정수
%x, %X - float, double : 부호 없는 16진 정수
%f - float : 10진수 방식의 부동소수점 실수
%lf - long double, double : 10진수 방식의 부동소수점 실수
%c - char, short, int : 값에 대응하는 문자
%s - char*(문자열) : 문자열
%p - void(주소값) : 포인터 주소
서식지정자에도 담을 수 있는 값의 범위가 있다.
#include <stdio.h>
int main(void)
{
unsigned char c = 200;
printf("%d\n", c); // 200
unsigned int i = 2200000000;
printf("%d\n", i); // -2094967296
printf("%u\n", i); // 2200000000
return 0;
}'C언어 공부' 카테고리의 다른 글
| C언어 기초 - 6. 반복문의 개념 (while, for) (0) | 2025.08.13 |
|---|---|
| C언어 기초 - 5. 증감연산자의 개념 (0) | 2025.08.13 |
| C언어 기초 - 4. 조건문의 개념 (0) | 2025.08.13 |
| C언어 기초 - 2. 연산자의 개념 (2) | 2025.08.13 |
| C언어 기초 - 1. 변수의 개념 (0) | 2025.08.12 |