一到自己实际做题,就发懵,,,始终不能明确各种指针及其关系...
我想请问一下,如果定义:
int **p,a[3][3];
能否通过设定得到:
p=&a[0];
红字部分正确
至于为什么,有三种情况
1.定义错(如v)
2.类型不匹配
3.对非左值赋值
非常感谢穆扬先生的解答.
下面的已改正了..
那请问:如有以下定义:
int *p;
int **q;
int *s[3];
int (*v)[3]; -----已改正;
int a[3][3];
int b[3];
哪条语句能正确的应用呢?为什么?
(A)q=&p; (B)q=&a[0]; (C)p=a[0];q=&p; (D)s[0]=a[0];
(E)s=b; (F)v=a[0]; (G)v=a; (H)v=&a[0];
(I)v=b; (J)q=a; (K)q=&b; (L)v=&b;