全站数据
8 4 2 0 5 8 1

c语言里const int和int有什么区别

考研学长拖鞋哥官方号 | 简单学习,快乐成才!         
问题更新日期:2024-10-13 11:19:18

问题描述

c语言里const int和int有什么区别求高手给解答
精选答案
最佳答案

int const a;与const int a;没有区别。intconst*a和constint*a没有区别,都是一个指向一个int常量的指针,这个指针本身以后可以重赋值指向别的int常量。

而int*consta;表示a是一个指针常量,初始化的时候必须固定指向一个int变量,之后就不能再指向别的地方了。

12345678910111213141516#include <stdio.h>int main(){int m = 3, n = 5; const int *a = &m; // 与下一行没有区别int const *b = &m; // 与上一行没有区别int *const c = &m; // <---------------- 与上两行有区别printf("*a = %d, *b = %d, *c = %d

", *a, *b, *c); a = &n;b = &n;// c = &n; // <----------------------- 会导致编译错误 printf("*a = %d, *b = %d, *c = %d

", *a, *b, *c);return 0;}