以下程序的输出在gcc上为50.怎么可能因为x是常量变量而*p是x本身,因为p是指向x处的值的常量指针.turbo c给编译器错误的地方.这是一个未定义的行为吗?请解释.
#include<stdio.h>
int main()
{
const int x = 25;
int * const p = &x;
*p = 2 * x;
printf("%d", x);
return 0;
}
Run Code Online (Sandbox Code Playgroud) c ×1