如果 i 是 int 型的变量,且 p 和 q 都是指向 i 的指针,下列赋值( )是有效的。
A. *p = q
B. p = i
C. &p = q
D. p = &*q
查看答案
若有:int a = 512, *p = &a; 则*p 的值为( )。
A. 变量 a 的地址
B. 512
C. 0
D. NULL
若有下列代码段: int *p, a = 10, b = 1; p = &a; a = *p + b; 执行该代码段后,a 的值为( )。
A. 12
B. 出错
C. 10
D. 11
若有下列代码段: int u = 4, v = 8, *p = &u, *q = &v; q = NULL; p = q; *p = 3; 则*p + *q 的结果是( )。
A. 出错
B. 8
C. 4
D. 12
假设 t 是整型变量,下面( )选项可以交换指针 p 和 q 所指的 int 型变量的值。
A. t = p; *p = *q; q = t;
B. t = &p; *p = *q; q = *t;
C. t = *p; *p = *q; *q = t;
D. t = p; p = q; q = t;