개발/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