int * const p2 = &a;则指针p的值不能被改变。
举一反三
- 若有声明语句“int a; int * const p=&a;”,则 。 A: p是一个指针型的常量,指针p本身的值不能被改变 B: p是一个指针型的常量,a的值不能被改变 C: p是一个指向常量的指针,所以a的值不能被改变 D: p是一个指向常量的指针,指针p本身的值可以改变
- 下列表达式,哪一是声明P为指向常量的指针() A: const int *p B: int* const p; C: const int *const p D: int *p
- void swap(int *p1,int *p2) {int *p; *p=*p1;*p1=*p2;*p1=*p; } A: 交换*p1和*p2的值 B: 交换*p1和*p2的地址 C: 正确,但无法改变*p1和*p2的值 D: 可能造成系统故障,因为使用了空指针
- 以下函数( )。 fun(int *p1,int *p2) { int *p; *p=*p1; *p1=*p2; *p2=*p; } A: 能实现交换*p*p1和*p2的值 B: 指针变量p没有确定指向就使用,运行时出错 C: 能实现交换p1和p2的值 D: 能实现交换p1和p2的指向
- 若有声明语句“inta;constint*p=&a;”,则。 A: p是一个指向常量的指针,不能通过p来改变所指对象a的值 B: p是一个指针型的常量,不能通过p来改变所指对象的值 C: p是一个指向常量的指针,所以a的值不能被改变 D: p是一个指针型的常量,所以a的值不能被改变