1、const修饰局部变量,存在栈区,虽然不能通过const修饰的变量去修改栈区的内容,但是可以通过地址去修改。
列子:
void test01()
{
const int a = 100;
int *p = &a;
*p = 200;
printf("a = %d",a);
}
int main()
{
test01();
return 0;
}
2、const修饰的全局变量是保存在静态区,不能通过变量名去修改,也不能通过地址去修改。
例子:
void test02()
{
int *p = &b;
*p = 100;
printf("b = %d",b);
}
int main()
{
test02();
return 0;
}
无输出结果。
3、c++中const修饰局部变量,存在符合表,不能通过const修饰的变量去内容,也不可以通过地址去修改。
例子:
void test01()
{
const int a = 10;
int *p = (int *)&a;
*p = 100;
cout << a << endl;
}
int main()
{
test01();
return 0;
}