关于scanf()修改常量指针指向数据值的问题
以下是John0826提出的一个问题:以下是引用John0826在2014-12-30 22:50:29的发言:
楼主你好
你所说const修饰的变量运行时不能更改,我有一点不同看法。
const int num = 10;
printf("%d\n",num);
printf("修改num\n");
scanf("%d",&num);
printf("%d\n",num);
这段代码在linux(gcc编译器)和windows下c编程(cfree编译器)都能执行,并且num的值会被修改,我一直很困惑于const在c中所扮演的角色,还望解惑。
楼主你好
你所说const修饰的变量运行时不能更改,我有一点不同看法。
const int num = 10;
printf("%d\n",num);
printf("修改num\n");
scanf("%d",&num);
printf("%d\n",num);
这段代码在linux(gcc编译器)和windows下c编程(cfree编译器)都能执行,并且num的值会被修改,我一直很困惑于const在c中所扮演的角色,还望解惑。
这个问题很好,值得详细解释一下。先占个位。