1. 一个常见的考点:

char* p = "test";

那么理利用指针p来改变字符串test的内容都是错误的非法的。

例如:

p[0] = 's';

strcpy(p, "haoel");  这都是错误的操作。

原因就在于,char* p = "test"; 这个声明,声明了一个指针,而这个指针指向的是全局的const内存区

const内存区当然不会让你想改就改的。所以,如果你一定要写这块内存的话,那就是一个非常严重的内存错误

 

2. 全局const内存区

char* p1 = "anything";

char* p2 = "anything";

printf(“ p1=%x, p2=%x /n”, p1, p2);

可以发现这两个内存地址是相同的,因为p1和p2都是指向的全局的const内存区的同一段内存中。

3. 在C++中声明字符串指针时

因为字符串是以常量的形式存在,所以可以 const char *p = "test";这样当你试图修改

字符串的内容时,就会报错。

4.  隐晦的字符串的const转换。

char *p = "test";

w_char *pw = L"test";
把一个const的字符串类型转成non-const的。包括指针和数组

 

最新文章

  1. hive创建索引
  2. mysql删除重复记录,保存Id最小的一条
  3. mysql大数据表改表结构方案
  4. Final-阶段站立会议3
  5. 国内下Android源码地址
  6. delete之后千万要记得将指针置空,即勿重复delete!!!
  7. JS滑动门,JQuery滑动门
  8. 网络授时服务 NTP
  9. 查看 ios 真机调试log,导出log
  10. windows下Jdk和Tomcat的安装配置
  11. Eclipse rap 富客户端开发总结(12) :Rap 优化之组件的销毁
  12. 《团队作业第一周》五小福团队作业——UNO
  13. SAP MM MM17里不能修改物料主数据'Purchasing Value Key'字段值?
  14. 14.Odoo产品分析 (二) – 商业板块(7) –制造(1)
  15. Python中调用自然语言处理工具HanLP手记
  16. Spring整合Redis时报错:java.util.NoSuchElementException: Unable to validate object
  17. openssl req 证书请求及自签名证书
  18. 移动app非功能测试点收集
  19. Flex开发实战(一)--Flex的具体介绍
  20. (九)经典_STM32_ADC多通道采样的例子

热门文章

  1. 【转】Android中实现IPC的几种方式详细分析及比较
  2. mac下elasticsearch安装部署
  3. 自定义Jquery分页插件
  4. pickle 两个使用小方法
  5. Java8函数式编程和lambda表达式
  6. js 输出某年某月某日的天数/判断闰年
  7. WPF知识点全攻略01- WPF相对WinFrom的优缺点
  8. vue与node和npm关系
  9. [LOJ] 分块九题 5
  10. django扩展User模型(model),profile