零、看谁在const后面,谁在const后面,就代表谁被const修饰,谁就被限定死,不可改。

eg.           const char *p -> *p 被修饰,*p(值)不可改;

char * const p -> p 被修饰, p(指针)不可改;

一、const char *p (限定*p,放开p;*p值不可改,指针p可修改)

对于 const char *s 来说,const char*是指向常量的指针,而不是指针本身为常量,可以不被初始化.该指针可以指向常量也可以指向变量,只是从该指针的角度而言,它所指向的是常量。

*s是不变的,s是可以改变的,const限定的*s。s被一个解引用运算符修饰,故s是个普通的指针,可以修改,但是s所指向的数据(即*s)由于const的修饰而不可通过指针s去修改。

二、char *const p (限定p,放开*p;指针p不可改,但可以通过p修改*p的值)

char *const s声明(*const s),(*const s)是char类型的。s被一个解引用运算符和一个const关键词修饰,故s是个不可修改的指针,但可通过指针s去修改s所指向的数据(即*s)。

三、char const *p  <=>  const char *p (*在const后面,表示限定的是*,是值)

四、const char * const s ; 如果不予许s被修改,也不予许修改s所指向的数据,则声明为const char * const s;

参考:

const char *、char const*、char *const三者的区别 - 知乎

const char *和char * const的区别_nulizhuanzhu的博客-CSDN博客

char *const 和 const char *(char const*)相关推荐

  1. “const char *“ 类型的实参与 “char *“ 类型的形参不兼容错误的解决方法

    "const char *" 类型的实参与 "char *" 类型的形参不兼容错误的解决方法 参考文章: (1)"const char *" ...

  2. 关于VS2022 C++报错 const char* 类型的实参与char *类型的形参不兼容解决办法

    关于VS2022 C++报错 const char* 类型的实参与char *类型的形参不兼容解决办法 问题来源 错误原因 解决方案 问题来源 在学习写C++代码时候,去练习课本上课后习题时候的问题, ...

  3. C语言编译时产生的警告:initializing ‘char *‘ with an expression of type ‘const char *‘ discards qualifiers

    警告的产生: char *my_strstr(const char *str1,const char *str2) {const char *s1 = NULL;const char *s2 = NU ...

  4. cannot convert ‘LPCWSTR {aka const wchar_t*}‘ to ‘LPCSTR {aka const char*}‘ for argument ‘3‘

    复制别人的代码运行报错cannot convert 'LPCWSTR {aka const wchar_t*}' to 'LPCSTR {aka const char*}' for argument ...

  5. getch()与_getch()、不能将const char*类型的值分配到const* 类型的实体

    参考1:getch()与_getch() 添加预处理 项目 -> 属性 -> 配置属性 -> C/C++ -> 预处理器 -> 预处理器定义 -> 编辑中添加:_C ...

  6. const char * 类型的实参与 char * 类型的形参不兼容_4 种 C++ 强制类型转换,你都清楚吗?...

    我们先来回忆以下,C 语言的强制类型转换形式: (type) expr; 这种旧式强制类型转换从表现形式上来说不够清晰明了,容易看漏,一旦转换过程出现问题,追踪起来也就更加困难. 为了解决以上问题,C ...

  7. 2020-09-21C++学习笔记之与C语言区别和加强——四种const意义(const int a; int const b; const int *c; int * const d)

    2020-09-21C++学习笔记(const int a; int const b; const int *c; int * const d) 这两天在上课更新晚了. 1.C/C++中的const ...

  8. 【C 语言】const 关键字用法 ( 常量指针 - const 在 * 左边 - 修饰数据类型 - 内存不变 | 指针常量 - const 在 * 右边 - 修饰变量 - 指针不变 )

    文章目录 一.const 普通用法 二.常量指针 ( 指向 常量 的指针 | 被指向的内存不能被修改 ) 三.指针常量 ( 指针不能被修改 ) 三.指向 常量 的 指针常量 四.const 在 * 左 ...

  9. c语言常量的正确表示const,C语言中的const和free用法详解

    注意:C语言中的const和C++中的const是有区别的,而且在使用VS编译测试的时候.如果是C的话,请一定要建立一个后缀为C的文件,不要是CPP的文件.因为,两个编译器会有差别的. 一.C语言中的 ...

  10. const int *p与int *const p的区别

    From: http://blog.csdn.net/suer0101/article/details/8032269 本文只是一篇学习笔记,是看了<彻底搞定C指针>中的相关篇幅后的一点总 ...

最新文章

  1. 【分享】分享一款不错的网页视频播放器
  2. golang网站错误处理
  3. C/C++头文件大全
  4. 登陆SharePoint站点出现service unavailable----Http错误503
  5. PLSQL 设置布局
  6. python自动化常见面试题_Python基础面试题80问 Python自动化开发
  7. MATLAB 绕轴旋转图像函数 rotate 详解
  8. 谈谈学完Asp.net 中的自定义控件后的感受
  9. php中几个操作函数参数的函数func_num_args() func_get_args() func_get_arg($i)php
  10. 制作一个简易的即时聊天工具
  11. MATLAB雷达信号处理
  12. 毕业答辩ppt怎么做?
  13. html 网页表格居中,网页中表格如何居中
  14. fxp连接失败_用FLASHFXP连接站点,总显示连接失败(连接丢失),该怎么办呢
  15. ubuntu系统调节显卡GPU风扇转速
  16. HNU大一小学期作业三 棋盘
  17. python开发的项目管理软件_10 个超好用的免费开源项目管理软件
  18. 取模、乘法和除法运算在CPU和GPU上的效率
  19. 企业价值角度:RPA 机器人是什么?
  20. pytorch Vocab

热门文章

  1. python爬取boss直聘招聘信息_Python 爬取boss直聘招聘信息!
  2. python爬取网站的图片
  3. 最早walkman android,首款Walkman血统安卓手机 索爱E16i评测
  4. Python_Flask
  5. Java:Set接口
  6. 2015年ps计算机试题,2015年3月全国计算机一级考试ps模拟试题及答案(二).doc
  7. UVM response_handler和get_response机制
  8. 《异常检测——从经典算法到深度学习》15 通过无监督和主动学习进行实用的白盒异常检测
  9. SecureCRT连接开发板
  10. h5在twitter里登陆功能使用体验