【C语言】const int * 与 int const * 有何区别?

不管const写成如何,读懂别人写的const和*满天飞的类型的金科玉律是const默认作用于其左边的东西,否则作用于其右边的东西

所以 const int * 与 int const * 无区别
尽量不将const放在最左边

一、常量指针

const int * p 等价于 int const * p

【C语言】const int * 与 int const * 有何区别?_第1张图片

二、 指针常量

【C语言】const int * 与 int const * 有何区别?_第2张图片

下面是一个使用示例:

#include 

int c = 1;
int * const a = &c;
int const *b;



int main()
{
	*a = 5; 
	b = &c ;
	printf("*a = %d\r\n",*a);
	printf("*b = %d\r\n",*b);
	return 0;
}

运行结果:
*a = 5
*b = 5


你可能感兴趣的:(c语言,开发语言)