通常:char* str="test";
不要修改这种方式声明的字符串内容。
malloc没问题。
数组方式:虽然也使用了静态只读数据段里内容,但很显然是复制而不仅仅是指向偏移,所以修改其中的内容不会导致错误。
本文讨论了C语言中处理字符串的不同方法。重点介绍了直接初始化字符串与使用malloc分配内存的区别,以及数组方式处理字符串的安全性问题。
通常:char* str="test";
不要修改这种方式声明的字符串内容。
malloc没问题。
数组方式:虽然也使用了静态只读数据段里内容,但很显然是复制而不仅仅是指向偏移,所以修改其中的内容不会导致错误。

被折叠的 条评论
为什么被折叠?