c语言字符串数组和字符数组有啥区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言字符串数组和字符数组有啥区别?相关的知识,希望对你有一定的参考价值。

这个是字符数组。
C语言字符数组和字符串的区别,字符数组是一个存储字符的数组,
而字符串是一个用双括号括起来的以'\0'结束的字符序列,虽然字
符串是存储在字符数组中的,但是一定要注意字符串的结束标志是'\0'。
总的来说是没有区别的,字符串就是以字符数组形式存储的。可以
把一个字符串看成是一个字符数组,可以按数组那样操作。两者没
有本质的区别,只是在不同的情况下有不同的叫法。
参考技术A 你那个是字符数组
字符数组和字符串数组的区别是,前者的每一个元素都是一个字符,而后者的每一个元素都是一个字符串。
char
s1[]
=
'a','b','c';
char
s2[][]
=
"abc","def","ghi";
参考技术B int array[10];
char array[10];第2行是字符数组,也就是说此时的数组在内存中是一段连续的存储空间,这一段空间
里面的单位是1个字节一个字节的。好比火车一节一节连接在一起,通俗来说字符数组里面装的都是字符
第1行是整形数组,也就是说此时的数组在内存中是一段连续的存储空间,这一段空间
里面的单位是2(或4字节)个字节2个字节的。好比火车2节2节连接在一起,通俗来说整形数组里面装的都是int型整数
不过你说的这个问题看你看问题的角度了。本质区别?用法区别?等等······
我跟你讲的是内存中的区别。
共同点:都是连续的空间。
不同的:单元长度不一样。
参考技术C 这个是字符数组,没有字符串数组这种说法的。。
char
a[
]="abcd";就是可以用字符串给字符数组初始化
参考技术D 是字符数组
字符串数组是指数组里面的元素是字符串
比如
char
*s[2]="aa","bb"是字符串数组

以上是关于c语言字符串数组和字符数组有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

C语言中啥是“字符”、“字符串”?有啥区别?

C语言的字符数组和字符串的区别

R语言里面的向量指的是啥,和数组有啥分别?应用于啥上面?

C语言中字符串和字符数组的区别

c语言字符串和字符串数组的区别

字符数组和单个线性数组有啥区别?