오늘은 변수의 개념을 학습하고 C++의 변수 생성 방법에 대해서 알아보자.
변수 생성을 위해서는 데이터 타입에 대한 이해도 필요하므로 대표적인 데이터 타입인 int, char, float에 대해서도 함께 공부하자.
변수란?
변수란 데이터를 저장할 수 있는 메모리 공간을 의미한다.
이렇게 설명하면 프로그래밍 언어 입문자는 이해가 어려우므로 예시를 들어보자.
박스에 '과일'이라는 이름을 붙이고 사과를 잔뜩 담아보자.
그럼 이 '과일' 박스에는 사과가 저장되어 있다.
이것을 변수에 대입해보자.
변수도 '이름'을 갖고, 데이터를 저장할 수 있다.
그런데 데이터를 저장하는 이 공간이 사실 '메모리 공간'인 것이고, 우리는 메모리 공간을 할당 받아 이름을 붙이고 이것을 변수라고 부르며 데이터를 저장하는 것이다.
int num;
이것이 바로 변수를 생성한 예시이다.
변수 생성하기
변수 생성을 위해서는 데이터 타입과 변수명을 결정해야 한다.
데이터타입 변수명;
박스에 무언가를 넣으려면 우선 이름을 붙이고 어떤 물건을 넣을지 결정해야 한다.
이 때 붙이는 이름이 바로 '변수명'이고, 어떤 물건을 넣을지 결정하는 것이 '데이터 타입'을 결정하는 것이다.
만약 박스에 정수형 데이터를 넣을 것이라면 데이터 타입을 'int'로, 문자형 데이터를 넣을 것이라면 'char'로 작성하면 된다.
int num;
정수형 변수 num을 생성한 예제이다.
여기에 데이터를 저장해보자.
int num;
num = 10;
int형 변수 num을 생성하고, 10을 대입했다.
정수 10을 넣을 것이기 때문에 int형으로 생성한 것이다.
그럼 이번에는 문자형 변수를 생성해보자.
char c;
c = 'a';
이번에는 문자형 데이터를 저장하기 위해 char형으로 변수 c를 생성했다.
그리고 'a'를 c에 대입했다.
정수형 변수를 생성하고 데이터를 저장할 때와는 사뭇 다르다.
정수형 변수에는 정수 10을 그대로 저장했지만, 문자형 변수에는 문자 'a'를 작은 따옴표 속에 넣어서 저장했다.
이것은 정수 데이터와 문자 데이터 코드 작성 방법이 다른 것이므로 외우도록 하자.
int와 float
int는 정수형을, float은 실수형을 의미한다.
둘 다 숫자를 의미하는데 왜 구분할까?
int형의 경우 소수를 다루지 않지만, float형은 소수까지 다루기 때문이다.
int num1 = 3.14;
cout << num1 << endl;
float num2 = 3.14;
cout << num2 << endl;
이 코드에서 num1과 num2의 출력 결과는 어떻게 다를까?
바로 소수가 출력되느냐 되지 않느냐의 차이이다.
3
3.14
num1의 경우 int형이므로 정수부만 출력되고, num2는 float형이므로 소수점 아래까지 출력된다.
코드 활용하기
지금까지 배운 변수의 개념과 데이터 타입을 활용해서 코드를 작성해 보자.
#include <iostream>
using namespace std;
int main()
{
int num1 = 10;
int num2 = 2;
cout << num1+num2 << endl;
}
int형 변수 num1과 num2를 생성해 각각 10과 2를 저장했다.
그리고 각 변수를 합해 cout으로 출력했다.
12
num1에 저장된 10과 num2에 저장된 2가 합해져 12가 출력된다.
이처럼 변수끼리 덧셈, 뺄셈, 곱셈, 나눗셈 등을 하면 변수에 저장된 데이터로 결과를 반환한다.
#include <iostream>
using namespace std;
int main()
{
char major[20];
major = "electronic";
cout << major << endl;
}
이번에는 char형 배열 major를 생성하고 문자열을 저장한 것이다.
위에서 학습한 것은 char형 변수를 생성하는 것인데, char 변수명; 형태와는 다른 점이 있다.
바로 char 변수명[20];으로 [20]이 붙는 것이다.
이것은 변수의 길이를 의미하며, 배열을 생성하겠다는 코드이다.
일반 변수의 경우 아래와 같이 코드를 작성하게 된다.
char major;
major = 'elec';
길이를 작성하지 않고, 작은 따옴표 안에 문자열을 작성한다.
major를 출력하면 아래와 같이 출력된다.
c
가장 마지막에 있는 문자 1개만 저장되는 것이다.
그래서 여러 개의 문자를 순서대로 저장하고 싶다면 위와 같이 배열을 생성하는 것이다.
char major[20];
major = "electronic";
문자 10개를 담기 위해서는 그것보다 더 큰 배열을 생성해야 한다.
그러므로 major의 길이를 20으로 설정했고, 배열의 크기가 큰 것은 상관없지만 작아서는 안된다.
그리고 한 개의 문자를 저장하는 것과는 다르게 큰 따옴표 안에 작성해야 한다.
이렇게 작성하면 major의 0번째 인덱스부터 순차적으로 e부터 저장되는 것이다.
오늘은 변수의 개념을 학습하고 생성하는 방법을 알아보았다.
오늘 학습한 데이터 타입인 int, char, float의 차이를 이해하고 어떤 타입으로 변수를 생성해야 할지 저장 할 데이터에 따라 적절한 타입의 변수를 생성하는 연습을 해보자.
그리고 변수와 배열의 차이를 이해하고 어떤 데이터를 저장하기 위해 어떤 것을 생성해야 하는지 이해하면서 코드 작성 연습을 하면 좋겠다.
'2025 C언어 강의' 카테고리의 다른 글
C++ for 반복문을 공부하자 (1) | 2025.01.13 |
---|---|
C++ 조건문 if, else if, else를 공부하자! (1) | 2025.01.12 |
C++ 배열을 공부하자 (배열의 개념, 문자열 저장하기) (2) | 2025.01.11 |
C++ 함수를 공부하자 (함수 생성, 반환형, return 0) (1) | 2025.01.10 |
C++ 메인 함수를 공부하자 (int main, void main, return) (6) | 2025.01.05 |