상수와 변수
자료형
프로그램에서 사용하는 자료의 형태
상수와 변수로 구분하여 사용
C 언어는 여러 가지 종류의 자료형(data type)을 지원
상수(constant)
항상 고정된 값을 갖는 자료
값이 한번 정해지면 프로그램 도중 그 값을 변경할 수 없는 수
- 정수형 상수
- 실수형 상수
- 문자형 상수
- 문자열 상수
정수형 상수
10진수, 8진수, 16진수로 표현
실수형 상수
- 부동소수점 형 상수
- double형을 기본 자료형으로 사용
문자형 상수
- 단일 인용부호(‘ ’)로 묶여 있는 1개의 영문자나 숫자문자
- 내부적으로는 해당문자의 ASCII 코드값이 사용 - 예를 들어 ‘A’는 내부적으로 65(ASCII 코드값)가 사용된다.
- Escape 문자 : 키보드에 나타나 있지 않은 문자
문자열 상수
- 이중 인용부호(“ ”)로 묶여 있는 복수개의 영문자나 숫자
- 기억공간에 보관될 때는 문자열 끝에 null 문자(\0)가 추가
ex) 문자열 “SEOUL KOREA”의 기억공간 보관 형태
변수
변할 수 있는 값
프로그램에서 변수는 프로그램 실행 도중 변할 수 있는 값이 저장되는 기억공간을 의미
이러한 변수 속에 들어가는 값은 수시로 변경될 수 있다.
따라서 변수는 사용 전에 반드시 선언하여 컴파일러가 기억공간에서 일정공간을 확보할 수 있도록 해야 함
- 모든 변수는 이름이 있다.(변수명)
- 모든 변수는 정해진 자료형이 있다.
- 모든 변수는 할당된 값을 갖는다.
변수명 정의 규칙
- 모든 변수는 사용되기 전에 선언되어야 한다.
- 변수명은 반드시 영문자나 밑줄(_)로 시작해야 한다.
- 변수명은 중간에 숫자, 밑줄(_)을 섞어서 명명할 수 있다.
- 변수명은 중간에 밑줄(_) 이외의 특수문자($, #, ?, …)를 섞어서 명명할 수 없다.
- 변수명은 대, 소문자를 구별하여 사용한다.
- 변수명으로 예약어들은 사용할 수 없다.
자료형과 변수 선언
변수: 자료를 저장할 기억공간을 확보하고 이 공간에 이름을 붙여준 것
변수 선언: 확보된 기억공간에 이름을 부여하는 것
-> 변수 선언을 위해 자료형이 필요
자료형
자료형의 종류
기본 자료형의 크기와 범위
정수형
- int 형, short 형, long 형, unsigned 형
- 운영체제에 따라 표현범위가 다름
실수형
- float 형, double형, long double형
- 기본형은 double형
문자형
- char 형, unsigned char 형
- ASCII 코드를 사용하여 처리
- -128 ~ 127까지의 값을 표현
열거형
- 숫자 대신 단어를 사용
- 형식 : enum 태그명 {열거자1, 열거자2, ... }
변수 선언
변수명과 변수가 가질 자료형을 지정하여 변수를 위한 기억공간을 할당하는 것
변수 선언 시 고려 사항
- 변수에 저장될 값의 크기(범위)
- 변수의 선언 위치
- 변수의 초기화
선행처리기 # (preprocessor)
컴파일에 앞서 프로그램 선두에 선언된 지시자들을 미리 처리하는 역할을 수행
선행처리기의 종류
선행처리기를 사용할 때 주의할 점
- 반드시 #로 시작해야 한다.
- 명령문 끝에는 세미콜론(;)을 붙이지 않는다.
- 한 줄에 하나의 명령만 쓴다.
- 소스 프로그램의 첫 부분에 위치한다.
파일 포함 #include
- C언어에서 제공되는 헤더파일(*.h)을 자신의 소스파일에 읽어 들여 함께 컴파일하고자 할 때 사용
- C 프로그램에서 표준함수인 printf( ), scanf( ) 등을 사용하려면
이 함수들의 원형(prototype)이 선언되어 있는 표준 입출력 헤더파일인 stdio.h를 #include 시켜야 함
매크로 정의 #define
매크로(macro)
- 선행처리기 #define을 사용하여 단순 치환되는 자료
- 프로그램 작성 시에 명령이나 수식 또는 상수값이 자주 사용될 때 이들을 대표하는 이름을 붙여 사용하는 대상
매크로 정의
- 매크로 상수 정의
- 매크로 함수 정의
조건부 컴파일
#if
#else
#elif
#endif
- 조건에 따라 프로그램을 컴파일하는 명령
- 최적의 코드로 프로그램을 작성할 수 있기 때문에 시스템의 성능 향상
- #if 와 #elif 다음에는 컴파일 여부를 결정하는 조건문 필요
조건문은 선행처리과정에서 진위 여부를 판단할 수 있어야 함
변수 지정이나 함수 호출 불가
주로 매크로 값이 사용
기본적으로 1이 참, 0이 거짓이기 때문에 A 프로그램을 컴파일
자료출처: 방통대 C프로그래밍 강의 자료
'공부 > C프로그래밍' 카테고리의 다른 글
1. C언어의 개요 (0) | 2024.02.26 |
---|