python에서 배운 상수와 변수의 개념은 같다.
다만 몇가지 차이가 있어 해당 내용을 짚고 넘어가겠다.
1. 상수(Constant)
- 고정적인 값을 사용할 때 사용하는 값으로 고정되는 값에 따라, 정수형, 실수형, 문자형으로 구분할 수 있다.
- 상수를 선언할 때에는 python과 달리 어떤 형태의 자료를 입력할지도 알려주어야 하는데,
[const + 자료형 + 상수명 = 상수 값;] 으로 구성된다.
( * [자료형 + const + 상수명 = 상수 값;] 으로 선언해도 정상 동작이 가능하다.)
- python을 다루던 우리에게 자료형을 선언하는 건 익숙하지 않은 과정이지만,
미리 자료형을 선언하기 때문에 차후 잘못된 자료형으로 인한 오류를 사전에 막을 수 있고,
자료형별로 사용가능한 메모리 할당량이 다르기 때문에 최소값과 최대값이라는 제한사항도 발생하게 된다.
(* 해당 내용은 다음 포스팅으로 작성해볼 예정이다.)
- 또 python과 달리 char(문자형) 상수의 경우, 영문 1글자만을 허용할 수 있는데(한글 미지원), 이 또한 아스키코드라는 방식으로 문자를 나타내기 때문이다.
(* 해당 내용도 별도의 포스팅으로 작성 예정이다.)
#include <stdio.h>
int main(void)
{
const int year = 2023; // 정수형 상수
const float pi = 3.14; // 실수형 상수
const char program_lan = 'C'; // 문자형 상수
printf("올해는 %d년입니다.\n", year);
printf("파이 값은 %0.2f 입니다.\n", pi);
printf("나는 %c언어를 배우는 중입니다.\n", program_lan);
return 0;
}
- 고정값인 만큼 프로그램 중간에 수정이 불가하다.(수정시 에러 발생)
- 변수의 경우 처음 선언 시 상수 값이 없어도 되지만, 상수의 경우 상수 값이 없으면 에러가 발생한다.
// 변수의 경우,
// 방법 1. 선언과 동시에 초기값 할당(가능)
int a = 10;
// 방법 2. 선언 후, 초기값 할당(가능)
int a;
a= 10;
// 상수의 경우,
// 방법 1. 선언과 동시에 초기값 할당만 가능
const int a = 10;
// 방법 2. 선언 후, 초기값 할당 불가
const int a; // 에러 발생
a= 10;
2. 변수(Variable)
- python의 변수와 같은 개념으로 데이터를 저장할 수 있는 공간을 확보한 상태라고 생각해도 좋다.
확보된 공간에 우리가 원하는 값을 저장하거나 수정하면서 원하는 데이터의 값을 유지할 수 있다.
- 기본적인 변수에 대한 추가적인 설명을 더하면, 프로그램에서 변경되지 않고 고정적인 값은 상수를 이용하고,
상황에 따라 변경되는 값은 변수를 이용한다.
- 변수를 선언할 때에는 상수에서 사용했던 구조에서 const만 제거 하면 된다.
[ 자료형 + 변수명 = 변수값; ] 의 형태를 가진다.
(*자료형과 변수명만 먼저 선언하고, 이후 변수 값을 할당할 수도 있다.)
#include <stdio.h>
int main(void)
{
int year = 2023; // 정수형 변수
float increase__per = 1.25; // 실수형 변수
char seat_char = 'D'; // 문자형 변수
printf("올해는 %d년입니다.\n", year);
printf("올해 연봉인상율은 %0.2f 입니다.\n", increase__per);
printf("예약된 좌석은 %c열 입니다.\n", seat_char);
printf("*********변수 값 변경*********\n");
year = 2024;
printf("내년은 %d년입니다.\n", year);
increase__per = 1.5;
printf("올해 연봉인상율은 %0.2f 입니다.\n", increase__per);
seat_char = 'F';
printf("예약된 좌석은 %c열 입니다.\n", seat_char);
return 0;
}
- 가장 큰 특징은 7~9 라인에 선언된 각각의 변수를 코드를 진행하는 동안 변경하여 결과 값을 바꿀 수 있다는 것이다.
3. 자료형 미리보기
- 위의 printf 함수를 살펴보면 사용되는 자료형에 따라 %d, %f, %c 등 형태가 바뀌는 것에 의문을 가지는 분들이 있을 것이다.
- 상수(또는 변수)의 자료형에 맞춰 작성을 해야 내가 원하는 결과를 나타낼 수가 있는데, 다음 포스팅에는 자료형에 대한 설명과 자료형에 따른 제한 값(최대, 최소값) 등을 알아볼 예정이다.
'IT 배우기 > C,C++' 카테고리의 다른 글
04. 자료형(정수형) (1) | 2023.10.06 |
---|---|
02. 주석 (1) | 2023.10.04 |
01. 기본구조(Hello, World) (0) | 2023.10.04 |
0. 환경 셋팅하기(Visual Studio Code) (0) | 2023.10.03 |
이제 진짜 Hello, World 다. (0) | 2023.10.02 |