#include<stdio.h> int main(void) { char *ptr = "Linux"; *ptr = 'T'; printf("\n [%s] \n", ptr); return 0; } 答:这是因为,通过 * ptr = ‘T’,会改变内存中代码段 (只读代码)“Linux”的第一个字母。这个操作是无效的, 因此会造成segment-fault或者崩溃。
收藏0 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
260
2096
4
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注电源系统设计
扫码关注21ic项目外包
扫码浏览21ic手机版
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才
京公网安备 11010802024343号