프로그래밍 지식/C++

C++ 문법/ 변수, 배열 초기화 [C++]

게임이 더 좋아 2021. 11. 9. 21:04
반응형
728x170

1. 변수 초기화

 

C++ 11에서 허용되는 문법과 C++에 넘어오면서 일반적인 변수 초기화와 다른 점이 있다.

 

//일반적인 초기화
int friends = 11;

//C++ 에서 넘어온 초기화
int ex(101) ; //ex를 101로 초기화함

//C++11에서 초기화 (배열과 같이 중괄호를 사용)
int milk = {11}; // 중괄호로도 바로 초기화 가능
int cheese{ 6 }; // =을 사용하지 않아도 된다.
//만약 공백이면 0으로 초기화함
int books = { };

 

이렇게 프로그래머에게 자유도를 높여준 것은

C++의 접근성을 높이기 위함이다.

 

 

2. 배열 초기화

 

** 초기화 형식은 배열이 선언될 때 한다.

int cards[4] = {3,6,1,2}; // 모든 원소 초기화
int hand[4]; // 값 초기화 x
float coll[5] = {1.2, 3.4}; // 처음 원소 2개만 초기화 (나머지는 0)
double sell[10] = {0}; // 모든 원소 0으로 초기화
long long things[] = {1,3,5,7}; // things의 크기가 4이면서 입력된 값으로 초기화 된다.

//전역에서 크기만 실행하는 경우
int arr[4]; // -> 모든 원소 값이 0으로 초기화된다.

**다만 원소의 개수를 컴파일러가 결정하게 하는 것은 좋지 않다.

위의 things[] 가 바로 그 예이다.

//C++11에서는 중괄호를 이용한 초기화를 제공한다.

double earnigs[4] {1.2e4, 1.6e4}; // =이 없어도 가능한 초기화 방법이다.
unsigned int counts[10] = { }; //비워놓아도 0으로 초기화 된다.
float balances[100] { }; // =이 없어도 0으로 초기화 된다.

 

 

728x90
반응형
그리드형