C程序面试中曾经面试过这样一道题:


#include <stdio.h> 
 
int main() 
{ 
    char *p = "12345"; 
    *p = '6'; 
 
    printf("修改后的字符串是%s\n", p); 
 
    return 0; 
} 

运行的结果如下:
图片 

这是因为,”12345“这个字符串在内存的区域是一段只读区域,只读区域是不能做任何修改的。

posted on 2017-01-05 12:44  C语言答疑课堂  阅读(173)  评论(0编辑  收藏  举报