char *const p char const *p const char *p有什么区别
时间: 2023-09-19 22:09:53 浏览: 41
这三种声明方式都涉及到const关键字,但它们有不同的含义。
1. `char *const p`:p是一个指向char类型的常量指针,也就是说,p的值(即地址)不能改变,但是p指向的内存中存储的值可以改变。
2. `char const *p`:p是一个指向const char类型的指针,也就是说,p指向的内存中存储的值不能改变,但是p本身的值(即地址)可以改变。
3. `const char *p`:与第二种声明方式相同,p是一个指向const char类型的指针,也就是说,p指向的内存中存储的值不能改变,但是p本身的值(即地址)可以改变。
因此,这三种声明方式的区别在于const关键字出现的位置。第一种声明方式中const出现在*前面,表示指针本身是常量;第二种和第三种声明方式中const出现在*后面,表示指针指向的对象是常量。
相关问题
const char *p , char const *p 和 char *const p有什么区别
const char *p, char const *p和char *const p有以下区别:
1. const char *p和char const *p是一样的,它们都是指向常量字符的指针。这意味着指针p指向的字符是不可修改的,但指针本身是可变的,可以指向其他常量字符。也就是说,我们不能通过指针p来修改它所指向的字符的值,但可以通过p来改变它指向的位置。
2. char *const p是一个常量指针,它指向的字符是可变的,但指针本身是不可变的。这意味着指针p不能指向其他位置,但可以通过指针p来修改所指向字符的值。
3. const char *const p是一个既指向常量字符又是一个常量指针。它指向的字符是不可修改的,同时指针本身也是不可变的,不能指向其他位置。
总结来说,const char *p和char const *p都是指向常量字符的指针,但指针本身是可变的;而char *const p是一个常量指针,指向的字符是可变的;const char *const p既指向常量字符又是一个常量指针。
const char *p 和 char * const p 的区别
引用中的代码演示了使用const修饰char类型指针变量的情况。在这种情况下,指针指向的内容是不可修改的,但是指针的地址可以改变。例如,const char *p表示p指向的内容是不可修改的,但是可以通过改变指针的地址来让p指向不同的内容。
引用中的代码演示了同样的情况。const char *p和char * const p的区别在于const关键字的位置不同。const关键字位于char之前时,表示指针指向的内容不可修改;而const关键字位于char之后时,表示指针的地址不可修改。
综上所述,const char *p表示指针指向的内容不可修改,但指针的地址可以修改;而char * const p表示指针的地址不可修改,但指针指向的内容可以修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [const char *p,char const *p和char *const p区别](https://blog.csdn.net/weixin_42888638/article/details/127122854)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *3* [const char*p与char* const p的区别](https://blog.csdn.net/2202_75625589/article/details/128595272)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]