关于数组和指向数组的指针,我有一个相当简单的问题.考虑这段代码片段..
int (*ptr)[3]; //A pointer to an array of 3 ints
int arr1[3] = {2,4,6,};
ptr = &arr1; //ptr now points to arr1
//3 different ways to express the same address
cout << &arr1 << "\t" << arr1 << "\t" << &arr1[0] << endl;
Run Code Online (Sandbox Code Playgroud)
现在如果:
&arr1 == arr1 == &arr1[0]..
Run Code Online (Sandbox Code Playgroud)
为什么这段代码不正确:
ptr = arr1;
Run Code Online (Sandbox Code Playgroud)
要么
ptr = &arr1[0];
Run Code Online (Sandbox Code Playgroud)
这一直让我发疯...所以请任何解释将不胜感激.另外请不要这不是一个家庭作业问题,只是我想要抓住的东西.