상세 컨텐츠

본문 제목

(C언어) ARRAY_SIZE()로 배열크기 측정 시 유의점

개발이야기/C or C++ 언어 관련

by mycatdid0 2022. 10. 7. 11:37

본문

반응형

(포스팅 2022.10.07)

C언어에서 자주 사용하는 매크로 중에 ARRAY_SIZE 가 있습니다. 배열의 크기를 확인할 때 주로 사용됩니다.

#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))

 

아래와 같이, 다차원 배열에서는 ARRAY_SIZE()에 넣는 인자를 수정하여, 2차원 배열의 row, col 의 값을 각각 구할 수 있습니다.

 

예제코드)

#include <stdio.h>

#define ROW 3
#define COL 4
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
int main(void)
{
	int a[ROW][COL] = { 0, };

	printf("ARRAY_SIZE(a) = %d\n", (int)ARRAY_SIZE(a));
	printf("ARRAY_SIZE(a[0]) = %d\n", (int)ARRAY_SIZE(a[0]));
}

반응형

관련글 더보기

댓글 영역