C++에서 배열을 초기화 하는 방법에는 fill(), memset()이 있다.
1. memset()
memset()은 배열을 0, -1, char형의 문자 한 개로 초기화 할 때 사용되며, memset(배열의 이름, k, 배열의 크기)의 형태로 사용된다.
int a[max_n];
int a2[max_n][max_n];
int main() {
memset(a, -1, sizeof(a));
memset(a2, 0, sizeof(a2));
}
2. fill()
0, -1, 문자 1개 외의 모든 값으로 배열을 초기화하려면 fill() 함수를 사용해야 한다. fill(시작주소, 끝주소, 초기화하는 값)으로 값을 초기화한다.
vector<int> v;
int a[max_n];
int a2[max_n][max_n];
int main() {
fill(v.begin(), v.end(), 10);
fill(a, a + max_n, 10);
fill(&a2[0][0], &a2[0][0] + max_n * max_n, 10);
}
'Problem Solving > C++' 카테고리의 다른 글
피보나치 수열의 다양한 구현방법 (0) | 2023.04.03 |
---|---|
정렬 - sort 함수 다루기 (기본 정렬부터 커스텀까지) (0) | 2023.01.24 |
순열과 조합 구현하기 (1) | 2023.01.16 |
string 관련 자주 쓰는 메소드 정리 (0) | 2023.01.08 |