[ CnUnix ] in KIDS 글 쓴 이(By): doldori (돌돌이) 날 짜 (Date): 2004년 7월 19일 월요일 오전 11시 08분 41초 제 목(Title): Re: questioin[3~[3~\[3~[3~[3~ 에러 처리 루틴은 생략합니다. int** create(int row, int col) { int i; int** x = malloc(row * sizeof(int*)); x[0] = calloc(row * col, sizeof(int)); for (i = 1; i < row; ++i) x[i] = x[0] + i * col; return x; } 이렇게 하면 int** x = create(10, 10); 같은 식으로 행렬을 만들고 x[i][j]로 원소 접근이 됩니다. 사용이 끝나면 반드시 메모리를 해제해야 하고요. 그리고 행과 열의 갯수도 같이 필요할 경우가 많을 테니까 포인터 변수와 행과 열의 갯수를 묶어서 구조체로 만드는 것도 좋겠군요. ps. 이런 거 할 때는 C++을 강력히 추천합니다. 간단한 템플릿이나 표준 라이브러리 사용법만 알아도 많은 노가다를 줄일 수 있거든요. |