const问题
#include <stdio.h>int main()
{
const int a = 10;//a的值应该是不可改写的吧?
int * b = &a;
(*b)++;
printf("%d\n",a);
}
为什么最后编译通过(产生一条警告信息),执行还是会改变a的值呢?
#include<stdio.h> #include<malloc.h> int main() { volatile const int a=0; int b[1]; b[1]=1; printf("%d\n",a); return 0; }