[C] 2차원 배열 동적 할당

#define ROW 3
#define COL 4

char **ptr = NULL;

ptr = (char**)malloc(sizeof(char*) * ROW); // 포인터 배열 개수 (행의 개수)
*ptr = (char*)malloc(sizeof(char) * (ROW * COL)); // 2차원 배열 총 개수
for(i = 1; i < ROW; i++){
	// i=1부터 하면 됩니다. ptr[0]은 *ptr과 같기 때문에
	ptr[i] = ptr[i-1] + COL; // 4(COL) 는 열의 개수입니다
}

// 해제
free(*ptr);
free(ptr);

댓글

이 블로그의 인기 게시물

[NSIS] 32비트와 64비트 모듈 등록하는 법. (regsvr32)

[Visual Studio] Windows 7 에서 Visual Studio 6.0 디버그 시 프로세스 좀비되는 증상 해결 방법