#include
int main()
{
int x = 5;
int * const ptr = &x;
++(*ptr);
printf("%d", x);
return 0;
}
(A)编译器错误
(B)运行时错误
(C) 6
(D) 5答案: (C)
说明:请参阅以下声明,以了解常量指针和指向常量的指针之间的区别。
int * const ptr —> ptr是常量指针。您可以在指针p指向的位置更改值,但是不能更改p指向其他位置。
int const * ptr —> ptr是指向常量的指针。您可以更改ptr以指向其他变量。但是您不能更改ptr指向的值。
因此上面的程序运行良好,因为我们有一个恒定的指针,并且我们没有更改ptr指向任何其他位置。我们只是在提升ptr指出的价值。这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。