개발/C
[C언어] 기초 - 02. 상수와 데이터
Gemma75
2020. 7. 21. 20:55
※해당 포스팅은 "혼자 공부하는 C언어"책을 기반으로 작성되었습니다.
출력 데이터 형태에 따른 printf 사용 법
출력 데이터 | 사용 예 | 결과 |
문자열 | printf("Be happy!"); | Be happy! |
제어 문자 | printf("Be Happy!\n"); | Be Happy!출력 후 줄바꿈 |
정수 | printf("%d", 10); | 10 |
실수 | printf("%lf", 3.5); | 3.500000 |
수식 | printf("%d", 10 + 20); | 30 |
제어 문자
제어 문자 | 의미 | 기능 |
\n | 개행 (new line) | 줄 바꿈 |
\t | 탭(tab) | 출력 위치를 다음 탭 위치로 이동 |
\r | 캐리지 리턴(carriage return) | 출력 위치를 줄의 맨 앞으로 이동 |
\b | 백스페이스(backspace) | 출력 위치를 한 칸 왼쪽으로 이동 |
\a | alert 경보 | 벨(bell)소리 알림 |
상수 표현 방법
01. 정수 상수 진법별 표현 방법
10진수 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
8진수 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
16진수 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
º 10진법 : 0~0까지의 10개 숫자를 사용
º 8진법 : 0~7까지의 8개 숫자 사용
8부터는 자릿수가 올라가 10으로 표현
º 16진법 : 0~9까지의 숫자와 A~F까지 6개 영문자를 포함하여 총 16개의 단위 숫자 사용
02. 세 가지 진법별 정수 상수 표현 코드
#include <stdio.h>
int main(void)
{
printf("%d\n", 15); //10진수 출력
printf("%d\n", 017); //8진수 출력
printf("%d\n", 0xf); //16진수 출력
return 0;
}
º실행 결과
15
15
15
03. 실수 상수 표현법
º 지수 표기법으로 표기
0.0000828 → 8.28 * 10의 -5승 → 8.28e-5
→ 정규화 표기법 : 0이 아닌 유효 숫자 한 자리를 사용하요 지수 형태로 바꾼 것
04. 지수 형태의 실수 상수 표현 코드
#include <stdio.h>
int main(void)
{
printf("%.1lf\n", 2e8); //지수 형태의 실수를 소수점 형태로 출력
printf("%.7lf\n", 8.28e-5); //소수점 이하 7자리까지 출력
printf("%le\n", 0.0000828); //소수점 형태의 실수를 지수 형태로 출력
printf("%.2le\n", 0.0000828); //지수 형태로 소수점 이하 둘째자리까지 출력
return 0;
}
º 실행결과
200000000.0
0.0000828
8.280000e-05
8.28e-05
문자열 표현 방법
01. 문자와 문자열 표현 코드
#include <stdio.h>
int main(void)
{
printf("%c\n", 'K');
printf("%s\n", "K");
printf("%c는 %s입니다.\n", '2', "second");
return 0;
}
º 실행결과
K
K
2는 second입니다.
º 아스키코드
사람이 사용하는 기호를 컴퓨터 안에서 표현하는 방법에 대해 약속한 것
컴퓨터에서 필요한 128개의 문자를 코드화
출처 : https://velog.io/@exploit017/%EC%95%84%EC%8A%A4%ED%82%A4-%EC%BD%94%EB%93%9C%ED%91%9C
02. 상수가 컴파일된 후의 비트 형태
상수 종류 | 크기(byte) | 크기(bit) | 바뀌는 형태 |
정수 | 4 | 32 | 2진수 |
실수 | 8 | 64 | IEEE 754표준 double형 |
문자 | 4 | 32 | 아스키 코드 값과 같은 2진수 |
★상수 종류
종류 | 표현 방법 | 사용 예 |
정수 | 0~9, +, - 기호 사용 | 10, -5, +20, 0 |
실수 | 0~9, +, -, .(소수점) 기호 사용 | 3.4, -1.8, .8, 12.0 |
문자 | 문자를 작은따옴표로 묶음 | 'K', 'b', '0', '-' |
문자열 | 하나 이상의 문자를 큰 따옴표로 묶음 | "K", "shine" |
★진법별 수 표현 방법
10진수 | 8진수 | 16진수 | 2진수 | 10진수 | 8진수 | 16진수 | 2진수 |
0 | 00 | 0x0 | 0000 | 8 | 010 | 0x8 | 1000 |
1 | 01 | 0x1 | 0001 | 9 | 011 | 0x9 | 1001 |
2 | 02 | 0x2 | 0010 | 10 | 012 | 0xa | 1010 |
3 | 03 | 0x3 | 0011 | 11 | 013 | 0xb | 1011 |
4 | 04 | 0x4 | 0100 | 12 | 014 | 0xc | 1100 |
5 | 05 | 0x5 | 0101 | 13 | 015 | 0xd | 1101 |
6 | 06 | 0x6 | 0110 | 14 | 016 | 0xe | 1110 |
7 | 07 | 0x7 | 0111 | 15 | 017 | 0xf | 1111 |