如何访问指向数组第一个元素的指针的值。
我在下面尝试过,但是代码无法构建。
int _tmain(int argc, _TCHAR* argv[])
{
/// pointers array
mint *yellow [5];
/// each pointers array point to an an array of 10 elements
for (int i = 0; i < 5; i++)
{
yellow[i] = new int [10] ;
}
/// assigning to pointer 1, array 1, element 1 the value of 0;
///
*yellow[0][1][0] = 0;
std::cout << *yellow[0][1][0];
system("pause");
return 0;
}
更新-
尽管我没有元素20,但是我仍然能够分配和打印元素20
int _tmain(int argc, _TCHAR* argv[])
{
/// pointers array
int *yellow [5];
/// each pointers array to an an array of 10 elements
for (int i = 0; i < 5; i++)
{
yellow[i] = new int [10] ;
}
/// assigning to pointer 1, array 1, element 1 the value of 0;
///
yellow[0][20] = 0;
std::cout << yellow[0][20];
system("pause");
return 0;
最佳答案
要访问第一个数组的第一个元素,请使用
yellow[0][0] = 0;
要么
(*yellow)[0] = 0;
要访问第二个数组的第三个元素,请使用
yellow[1][2] = 0;
要么
(*(yellow+1))[2] = 0;
概括一下这个想法...要访问第M个数组的第N个元素,请使用
yellow[M-1][N-1] = 0;
要么
(*(yellow+M-1))[N-1] = 0;