请注意是const char* 与 const char * 之间有什么区别
时间: 2023-08-09 09:12:32 浏览: 54
在定义指针变量时,const 关键字可以放在 * 前面或者 * 后面,它们的含义是不同的:
- const char* a: 表示 a 是一个指向 char 类型的常量指针,即指针所指向的字符串内容不能被修改,但是可以修改指针本身,即可以让它指向其他的地址。
- char const *a: 与 const char* a 等价,同样表示 a 是一个指向 char 类型的常量指针。
这两种写法的效果是一样的,都表示指针指向一个常量字符串,不能修改字符串内容。
需要注意的是,对于指针的 const 限定符,它只控制指针所指向的内容是否可以被修改,而不控制指针本身的值是否可以被修改。因此,如果需要限制指针本身的值不能被修改,可以将指针声明为指向常量的常量指针,即 const char * const a。
相关问题
char *const p char const *p const char *p有什么区别
这三种声明方式都涉及到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既指向常量字符又是一个常量指针。
相关推荐
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)