const 使用方法
#include <stdio.h>
const int a=10;
/*const 使用的是全局变量进行赋值的时候,
* 1. 如果直接对值进行赋值,会产生错误
* 2. 如果通过地址改变内容,会产生段错误
* */
void test()
{
printf("%d\n",a);
// a=11;
// printf("%d\n",a);
// int *p=&a;
// *p=100;
printf("%d\n",a);
}
void test2()
{
const int x=10;
/* const 使用作为局部变量
* 1. 如果直接对值进行赋值,会产生错误
* 2. 如果通过地址改变内容,会产生警告,但是可以改变值
* */
// x=12;
// printf("%d\n",x);
int *p=&x;
*p=100;
printf("%d\n",x);
}
void test3()
{
int c=100;
const int *x=&c;
/*const 修饰指针变量
* 1.如果const修饰的是指针变量的类型,则无法通过指针变量修改里面的值*x=999;
* const int * x;
* 2.如果const修饰的是指针变量,则无法修改指针变量保存的地址x=&xx;
* int *const x;
* 3.如果const既修饰指针变量的类型,又修饰指针变量,则只能通过原本变量修改值c=666;
* const int *const x;
* */
printf("%d\n",*x);
c=666;
printf("%d\n",*x);
*x=777;
printf("%d\n",*x);
int xx=122;
x=&xx;
printf("%d\n",*x);
}