본문 바로가기
카테고리 없음

C++ 기본 개념

by m_mOn 2023. 6. 13.

C++ 기본 개념들에 대해 설명하겠습니다.

 

C++ 기본 개념

❑ 표준 입력/출력(cin/cout)
❑ 식별자(변수 이름)
❑ 데이터 유형
❑ 변수 선언
❑ 변수 초기화
❑ 상수 변수
❑ 변수 범위
❑ 네임스페이스 (Namespace)
❑ 타입 캐스팅 (Type Casting)


C++는 광범위한 기능과 개념을 제공하는 강력하고 널리 사용되는 프로그래밍 언어입니다.

기본 개념을 파악하기 위해 각 항목을 자세히 살펴보겠습니다.

 

 

표준 입력/출력(cin/cout)
C++는 표준 입력/출력 스트림을 통해 사용자와 상호 작용하는 편리한 방법을 제공합니다. "iostream" 라이브러리에는 "cin"과 "cout"이라는 두 가지 중요한 객체가 포함되어 있습니다. "cin"은 입력에 사용되어 사용자로부터 값을 읽을 수 있고 "cout"은 출력에 사용되어 콘솔에 정보를 표시할 수 있습니다. "cin"과 함께 추출 연산자(>>)를 사용하여 입력을 받고 "cout"과 함께 삽입 연산자(<<)를 사용하여 데이터를 출력할 수 있습니다.

 


식별자(변수 이름)
식별자는 C++ 프로그램 내의 변수, 함수, 클래스 및 기타 엔터티에 지정된 이름입니다. 이러한 엔터티를 참조하는 레이블 역할을 합니다. 유효하려면 식별자가 특정 규칙을 따라야 합니다. 문자 또는 밑줄로 시작해야 하며 후속 문자는 문자, 숫자 또는 밑줄이 될 수 있습니다. 식별자는 대소문자를 구분합니다. 즉, "myVariable" 및 "myvariable"은 별개의 식별자로 취급됩니다.

 


데이터 유형
C++는 다양한 종류의 값을 저장하기 위해 다양한 데이터 유형을 지원합니다. 몇 가지 일반적인 기본 제공 데이터 유형은 다음과 같습니다.

int: 정수 값을 나타내는 데 사용됩니다.
float: 단정밀도 부동 소수점 숫자를 나타내는 데 사용됩니다.
double: 배정밀도 부동 소수점 숫자를 나타내는 데 사용됩니다.
char: 단일 문자를 저장하는 데 사용됩니다.
bool: 부울 값(true 또는 false)을 나타내는 데 사용됩니다.
이것은 단지 몇 가지 예일 뿐입니다. C++는 배열, 문자열 및 포인터와 같은 특정 목적을 위한 추가 데이터 유형을 제공합니다.

 


변수 선언
C++에서 변수는 사용되기 전에 선언되어야 합니다. 변수 선언에는 변수의 데이터 유형 및 이름 지정이 포함됩니다. 

예를 들어:
int age; // 정수 유형의 "age"라는 변수를 선언합니다.
선언은 컴파일러에게 변수의 존재를 알리고 해당 값을 저장할 메모리를 예약합니다.

 


변수 초기화
변수 초기화에는 선언 시 변수에 초기 값을 할당하는 작업이 포함됩니다. 초기화되지 않은 값을 사용하지 않도록 변수를 초기화하는 것이 좋습니다. 

예를 들어:
int count = 0; // 정수 유형의 "count"라는 변수를 선언하고 0으로 초기화합니다.
선언 시 변수를 초기화하면 알려진 값으로 시작하도록 할 수 있습니다.


상수 변수
"const" 키워드를 사용하여 선언된 상수 변수는 일단 할당되면 변경할 수 없는 값을 보유합니다. 예를 들어:
const int MAX_VALUE = 100; // 값이 100인 "MAX_VALUE"라는 상수 변수를 선언합니다.
상수는 프로그램 전체에서 일정하게 유지되는 값을 정의하는 방법을 제공하므로 코드를 더 읽기 쉽고 유지 관리할 수 있습니다.



변수 범위
변수 범위는 변수가 표시되고 액세스 가능한 프로그램 영역을 나타냅니다. C++는 지역 변수와 전역 변수를 지원합니다.
지역 변수(Local Variables): 블록 또는 함수 내에서 선언된 변수는 지역 범위를 가집니다. 해당 블록 또는 기능 내에서만 액세스할 수 있습니다. 블록이나 함수가 종료되면 변수는 더 이상 존재하지 않습니다.
전역 변수(global Variables): 함수 외부에서 선언된 변수는 전역 범위를 가집니다. 프로그램의 모든 부분에서 액세스할 수 있습니다. 전역 변수는 프로그램 실행 내내 존재합니다.
변수 범위를 이해하는 것은 변수의 수명과 액세스 가능성을 관리하는 데 중요합니다.

 


네임스페이스
네임스페이스는 코드를 구성하고 이름 충돌을 방지하는 방법을 제공합니다. 관련 식별자를 함께 그룹화하여 동일한 이름의 엔터티 간의 충돌을 방지합니다. 네임스페이스는 "namespace" 키워드와 네임스페이스 이름을 사용하여 선언됩니다.



타입 캐스팅
타입 변환이라고도 하는 유형 캐스팅은 한 데이터 유형을 다른 데이터 유형으로 변환하는 프로세스입니다. C++는 여러 유형의 캐스팅을 지원합니다.
정적 캐스트(Static Cast): 호환되는 유형 간의 간단하고 안전한 유형 변환에 사용됩니다.
동적 캐스트(dynamic Cast): 상속 계층 구조와 관련된 보다 복잡한 유형 변환에 사용됩니다.
Reinterpret Cast: 하나의 포인터 유형을 관련 없는 다른 포인터 유형으로 변환하는 데 사용되며 잠재적으로 정의되지 않은 동작이 발생할 수 있습니다.
Const Cast: C++에서 사용되는 타입 캐스팅의 한 종류입니다. 이 캐스팅은 변수에서 const 한정자를 제거하거나, const 한정자를 추가하기 위해 사용됩니다.