[C/C++ 기본 문법] memset로 모든 요소 0으로 초기화 시키기

2024. 5. 12. 00:49코딩테스트 Intro/C++

728x90

C++에서 memset 함수를 사용하여 배열의 모든 요소를 0으로 초기화하는 것은 간단합니다. memset은 주어진 메모리 영역을 특정 바이트 값으로 설정합니다. 0으로 초기화하는 경우는 memset을 사용하기에 적합합니다.

int 배열의 모든 요소를 0으로 초기화하려면 다음 코드를 사용할 수 있습니다:

#include <cstring>  // memset 함수를 사용하기 위해 cstring 헤더 파일 포함

int main() {
    int nextgrid[4][4];
    // 배열의 전체 크기인 sizeof(nextgrid)를 사용하여 0으로 초기화
    memset(nextgrid, 0, sizeof(nextgrid));
}

여기서 중요한 점은 memset 함수의 매개변수입니다:

  • 첫 번째 매개변수 nextgrid는 초기화하려는 배열의 주소입니다.
  • 두 번째 매개변수 0은 메모리를 설정할 값입니다.
  • 세 번째 매개변수 sizeof(nextgrid)는 초기화할 바이트 수로, nextgrid 배열의 전체 크기를 나타냅니다.

이렇게 설정하면 nextgrid 배열의 모든 요소가 정확히 0으로 초기화됩니다. 이 방법은 int 타입의 요소를 0으로 설정할 때 안전하며 효과적입니다.

 
memset에 들어가는 설정 값은 0 말고는 비추
그 대신에 fill 쓰는 방법 있어~
 
 
728x90