
在我们写C语言代码的过程中要使一个变量的值禁止被修改时可使用const来修饰这个变量const是 C 语言中的类型限定符表示“只读”。它主要用于告诉编译器这个对象不应该被修改#include stdio.h int main() { const int a 5; int b 3; return 0; }在上面这个代码中a的值被const修饰不能被修改修改时会出现报错而b的值可以被修改。如果要想强行修改被const修饰的变量时我们可使用指针进行修改。但不建议修改被const修饰的变量因为这个写法不是合法修改,会出现警告。#include stdio.h int main() { const int a 5; int b 3; int* pa a; *pa 10; printf(%d %d\n, a,b); return 0; }此时我们通过了一个int类型的指针pa在VS2026中强行将a的值从5修改为10。对于指针来说const也可以对他进行修饰其修饰方法有三种一种是放在*的左边一种是放在*的右边还有一种是同时放在*的两侧。即const靠近谁谁不能改。#include stdio.h int main() { int a 5; int b 3; int c 2; printf(a %d,b %d,c %d\n, a, b, c); const int* pa a; int* const pb b; const int* const pc c; printf(a %d,b %d,c %d\n, *pa, *pb, *pc); pa c; *pb 10; printf(a %d,b %d,c %d\n, *pa, *pb, *pc); return 0; }当const出现在*号的左边时修改变量时不能通过*pa 10来进行修改只能修改其指针所指向的地址 pa c。当const出现在*的右边时则指针本身不能修改及不能pb a但可对指针所指向的地址的值进行修改*pb 10。当const同时出现在*的左右两边时指针本身以及所指向的数据也不能修改。