1.char const *p 和 const char*p
在C语言中,char const *p 和 const char*p 是等价的,都表示指向常量的指针。(等同于定义一个指向字符常量的指针
char const * 和 const char * 是完全相同的声明方式,只是const的位置不同。
根据C语言的语法规则,const 可以放在类型和指针之间,也可以放在类型之前。例如:
char const *ptr = "Hello";const char *ptr = "Hello";
意味着指针所指向的字符不能通过该指针进行修改,但指针本身可以指向其他地址。

2.char *const ptr
char *const ptr 表示定义了一个指向字符的指针,这个指针的指向是常量,即不能改变指针的指向,但可以修改指针指向的内容。

3.使用场景:
当需要确保指针的指向不变,但需要修改指针指向的内容时,使用 char *const ptr。
当需要频繁改变指针的指向,但保证不通过该指针修改其指向的内容时,使用 const char *ptr 或 char const *ptr。

745

被折叠的 条评论
为什么被折叠?



