C프로그래밍 2장

이은주·2022년 9월 19일

C프로그래밍

목록 보기
2/6

1. 변수와 자료형

1-1. 변수, 자료형, 상수

  • 변수 : 값을 담을 그릇
    - 값을 저장하기 위한 기억 장소
    • 사용하기 전에 반드시 선언 : int c;
  • 자료형 : 그릇의 모양
    - 자료 값의 형태
  • 상수 : 변하지 않는 수로 변수와 대비되는 개념
    - 10, 20, 30 과 같은 특정 값

2. 변수 선언과 사용

2-1. 변수 선언

int c;
  • 자료형 int, char, float, double 등을 앞에 명시한 후 사용할 변수 이름을 적음
  • 변수 선언도 하나의 문장이므로 세미콜론을 붙여야 함
int num;
char ch;
float x;
double y;

int num1, num2;		// 같은 자료형에 두 개 이상의 변수 한 문장에 선언 가능

2-2) 변수 값 저장

  • 선언된 변수에 값을 저장하기 위해서는 대입연산자 = 사용
  • 왼쪽 변수에 오른쪽의 값을 대입(저장)하라는 의미
  • 변수에 새로운 값을 대입하면 이전 값은 사라짐
int num;		// 변수 num 선언

num = 10 + 20;	// 변수 num에 값 30 대입(저장)

2-3) 변수 값 참조

int num;
num = 10;

printf("%d", num);	// 변수 num에 저장된 값 10 출력

2-4) 변수의 위치에 따른 의미

a = b; : 변수 a에 변수 b의 값 대입

  • 대입 연산자 왼쪽 : 저장 공간 자체
  • 대입 연산자 오른쪽 : 저장된 값

2-5) 변수 초기화

  • 변수를 선언만 하고 값을 대입하지 않으면 쓰레기 값이 저장되어 있음
  • 선언과 동시에 변수 값 지정 (변수 초기화) : int num = 123;

2-6) 키워드와 식별자

  1. 키워드
    • C언어에서 특별한 의미를 가지도록 미리 정해놓은 단어
    • char, int, double
  2. 식별자
    • 변수처럼 프로그래머가 지어서 사용하는 이름
    • 식별자로 사용할 수 없는 이름의 예
      • 밑줄이 아닌 특수 문자 X
      • 첫 문자에 숫자 X
      • 키워드 X

3. 정수 자료형

3-1. 정수 자료형

  • 자료형 키워드 : int, short, long, long long
  • 정수형 출력 : printf의 서식 지정자 %d사용
  • 정수형의 크기 : short <= int <= long <= long long

3-2. signed와 unsigned

  1. signed : 음수와 양수 모두 표현
  2. unsigned : 0과 양수만 표현
    • printf의 서식 지정자 %u 사용
  • int, short 등의 앞에 부호 여부 명시해주면 됨
  • 명시하지 않으면 기본적으로 signed

4. 부동소수 자료형

  • 자료형 키워드 : float, double, long double
  • 부동소수형 출력 : printf의 서식 지정자 %f사용
  • 부동소수형의 크기 : float <= double <= long double

5. 문자 자료형

5-1. 문자 자료형

  • 자료형 키워드 : char', 'signed char', 'unsigned char
  • 문자형 출력 : printf의 서식 지정자 %c사용
  • 문자형의 크기는 모두 1바이트

5-2. 문자형의 실체

  • 특정 문자에 해당하는 정수값을 지정 : 아스키(ASCII) 코드
  • 문자형은 본질적으로 정수형과 동일
char c1 = 'A';		// 문자 'A'로 초기화
char c2 = 65;		// 정수 65로 초기화

printf("c1: %c %d\n", c1, c1);
printf("c2: %c %d\n", c2, c2);
▼ 실행 결과 ▼

c1: A 65
c2: A 65
  • 정수 연산 가능
char ch = 'A' + 1; 	// 65 + 1 = 66 => 문자 'B' 저장
  • 부호 없는 자료형 가능

5-3. 특수 문자(이스케이프 시퀀스)

  • \n : 새로운 줄로 이동
  • \t : 다음 탭으로 이동
  • \b : 앞으로 한 칸 이동
  • \r : 줄의 맨 앞으로 이동
  • \a : '삑' 소리를 냄
  • \\ : 역슬래쉬 \
  • \' : 작은 따옴표 '
  • \" : 큰 따옴표 "

6. 자료형 변환

6-1. 자동 형변환

  • 자동 형변환(묵시적 형변환) : 정수 <-> 부동소수 형 변환을 자동으로 수행
  • int a = 123.45;
a <= 123(정수) <= 123.45(부동소수)
			형 변환
  • double b = 123;
b <= 123.0(부동소수) <= 123(정수)
				 형 변환

6-2. 명시적 형변환

  • printf의 서식 지정자에 따라 형변환이 자동으로 발생하지 않아 명시적 형변환 필요
printf("12.3: %d\n", (int) 12.3);
printf("123: %f\n", (double) 123);
▼ 실행결과 ▼
12.3: 12
123: 123.000000

0개의 댓글