쌓고 쌓다

[C++] 배열 초기화 - fill 함수 본문

프로그래밍/C & C++

[C++] 배열 초기화 - fill 함수

승민아 2022. 7. 9. 22:02

fill 함수 사용을 위해 #include <algorithm> 필요.

 

함수 원형

void fill(const _FwdIt _First, const _FwdIt _Last, const _Ty& Val)

First 와 Last Iterator를 받아 초기화한다.

채우는 범위는 [First, Last)이며 Last는 포함하지않는다.

 

예제 ( int 배열 초기화 )

int arr[5];
fill(arr, arr + 5, -1);

for (int i = 0; i < 5; i++)
	cout << arr[i] << " ";

 

예제 ( vector 초기화 )

vector<int> v(5);
fill(v.begin(), v.end(), -1);

for (int i = 0; i < 5; i++)
	cout << v[i] << " ";

 

예제 ( string 초기화 )

string str = "Hello";
fill(str.begin(), str.end(),'Z');

for (int i = 0; i < 5; i++)
	cout << str[i] << " ";

 

2차원 배열 (fill로 채우기)

#define ROW 5
#define LOW 5
int arr[5][5];
fill(&arr[0][0], &arr[ROW - 1][LOW], -1);

 

채울 행과 열을 기준으로

arr[행-1][열]을 기준으로 잡자.

즉 1차원에서 끝은 포함하지 않는것처럼 행은 그대로 채우되 열만 채울 열+1 을 넣어주자

Comments