c语言中字符串的存储方式(转)

c语言中没有字符串类型,而c++中有字符串类型string。所以c语言使用两种方式来存储字符串。char*和char[],

char*a="123456";右面的123456是字符串常量,所谓常量就是这个值是保存在内存中的字符串常量区。每个字符串后面都有系统预设的结束符"",

char a[ ]="123456";//这个是将字符串保存在数组里。这个是数组初始化。相当于a[0]=1,a[1]=2;.......这个时候123456不是常量,而是一个个的存储在数组中的元素。如果这一句是在函数中,那么123456是存储在栈上的函数中的数组当中。

而char a[10];a="123456";这种方法不可取,因为a是地址,是一个常量

原文链接:https://blog.csdn.net/woainilixuhao/article/details/90370149

原文地址:https://www.cnblogs.com/yeshenmeng/p/12714792.html