|
구리구리 님이 쓰신 글 :
: 답변 잘 참고 하겠습니다
: 전 30 * 30 자체를 동적으로 크기를 할당하려고요...
안녕하세요?
2차원 배열은 동적할당이 안됩니다.
하지만 2차원 배열은 결국 1차원 배열로 저장되므로 1차원 배열로 바꾸면 되겠죠.
간단한 예제를 만들었으니 참고하세요.
w = 가로, h = 세로, d = 그림 갯수입니다.
클래스로 만들면 사용하기 쉽게 다듬을수 있겠죠.
그럼 이만...
int h=2, w=3, d=4, cnt=0;
char *ary, temp;
ary = new char[h*w*d];
char sample[2][3] = {{'a','b','c'},{'d','e','f'}};
for (int i=0; i<d; i++)
for (int j=0; j<h; j++)
for (int k=0; k<w; k++)
ary[k + (j*w) + (i*h*w)] = sample[j][k];
for (int i=0; i<h*w*d; i++) {
cout << ary[i];
cnt++;
if(cnt%w == 0)
cout << endl;
else
cout << " ";
if (cnt%(w*h) == 0) {
cout << endl;
cnt = 0;
}
}
|