2
int** mat = new int*[5];
// define the elements to be inserted to the matrix
int* i1 = new int;
*i1 = 1;
int* i2 = new int;
*i2 = 2;
int* i3 = new int;
*i3 = 3;
int* i4 = new int;
*i4 = 4;
int* i5 = new int;
*i5 = 5;
// insert the elements to the matrix
mat[0] = i1;
mat[1] = i2;
mat[2] = i3;
mat[3] = i4;
mat[4] = i5;
이제 포인터를 정의합니다. 이 포인터를 통해 행렬을 인쇄하고 싶습니다. 그래서 그것을 정의 : 여기포인터를 통해 행렬을 인쇄하십시오.
int* ptr = *mat;
을하고 나는 그것을 인쇄 :
for (int i = 0; i < 5; i++) {
cout << *ptr << endl;
ptr++;
}
그러나 나는 가지고 :
1
2543679
9826
257678
7853
내가 포인터를 통해 인쇄 할 것을 기억하십시오 (및 수행 it ++)은 ptr
및 for loop
의 내용과 만 관련됩니다.
바하마, 그것으로 나를 이길
, 당신은을 필요 배열을 이동하려면 P를 또한 당신을 행을 추가하여 각 행에 대해 새로운 int [no_of_columns]를 원할 것임을 명확히 할 수 있습니까? – cristicbz
@ 다니엘 피셔, 와우, 고마워! –