对字符串常量的修改

来源:互联网 发布:java参数传递构造函数 编辑:程序博客网 时间:2024/03/29 17:02
K&R C中规定字符串中所有字符和NUL终止符都存储于内存的某个位置。可以修改字符串常量。

但ANSI C中则规定如果对一个字符串常量进行修改,其结果是未定义的。

因此,如果要修改字符串常量,请把它存储在数组中,这样,字符串将存储在普通内存区中,可修改。

#include<stdio.h>

int main(){

char *pstr = "hire";

//pstr[0] = 'f'; //error

puts(pstr);

char str[] = "ha";

str[1] = 'i';

puts(str);

return 0;

}

原创粉丝点击