找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 345|回复: 2

Questin8.5:What is the difference between these initializaitons?

[复制链接]

210

主题

371

回帖

0

积分

管理员

积分
0
发表于 2013-7-7 11:03:56 | 显示全部楼层 |阅读模式

Q: What is the difference between these initializations?
char a[] = "string literal";char *p  = "string literal";
My program crashes if I try to assign a new value to p[].
A: See question 1.32.

210

主题

371

回帖

0

积分

管理员

积分
0
 楼主| 发表于 2013-7-7 11:05:39 | 显示全部楼层
问题:这两种初始化有什么不同?
char a[] = "string literal";char *p  = "string literal";
如果我试着给数组p[]重新赋值的时候,我的程序崩溃了(在linux下执行的时候提示segmentation fault(段错误))。
回答:参考问题1.32。

14

主题

65

回帖

0

积分

新手上路

积分
0
发表于 2013-7-8 22:13:08 | 显示全部楼层
char *p  = "string literal";
字符串存在常量区,不可以修改。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

果子博客
扫码关注微信公众号

Archiver|手机版|小黑屋|风叶林

GMT+8, 2026-2-1 18:11 , Processed in 0.068244 second(s), 20 queries .

Powered by 风叶林

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表