lzth.net
当前位置:首页 >> 字符串和数组的区别 >>

字符串和数组的区别

1、长度不同:对于字符数组,其长度是固定的,其中任何一个数组元素都可以为 null 字符.因此,字符数组不一定是字符串.字符串的结尾是以null 字符结尾,所以长度会有所不同.2、结尾不同对于字符串,它必须以 null 字符(也就是'\0',用

字符串是字符的一个序列,字符数组是一个字符类型的数组字符串为了标志结束,在末尾自动加了'\0',字符数组有大小不需要结束符C中字符串处理时将有效位按照字符数来比较初始化不一样

字符数组没有结束标志'\0',而字符串则在末尾有结束标志'\0' 在C中,字符串就是末尾有字符串结束标志'\0'的字符数组.如果用gets()输入,则会自动在末尾加上结束标志'\0'

对C语言而言字符数组是容器,字符串是内容字符数组好比香水瓶,字符串就是其中的香水字符串长度必须小于字符数组长度.

最为明显的差别是二者装载有样多字符时,用函数strlen()返回的长度不同,且字符串的长度比字符数组长度大1.这是因为在初始化时,字符串是以指针标记其起始地址,而数组则以数组名标记的,数组名是常量,不像指针那样可以使用++或--使其指向不同位置的字符.

通常字符数组中的所存储的内容也可以称为字符串, 但我想你想表达的意思可能是对于:char *p1 = "A String."; 和 char p2[] = "Another String."; 这两种写法的不同吧.p1指向的这个字符串是个常量, 不可改变, 程序在编译期间就为"A

1、结束标志不同 字符串:必须以'\0'结尾;// ' \0 ' 的意义是“字符串结束符”.字符数组:可以包含多个'\0',但是如果当做字符串处理,则实际有效字符串为第一个'\0'的签名的字符串,如果当做字符数组处理,可以处理字符数组的任何一个

你问的不是很详细.我属于菜鸟级别的.姑且回答一下.1、字符zhidao串是类,字符内数组是数组.(数组和类的区别就不用我说了吧)2、字符数组是char类型的,字符串是String类型的3、两者之间的相互转化: String s="this is a string"; char[ ] c={'t','h','i','s','i','s','a','c','h','a','r'}; 字符串转换容为字符数组 char[ ] ch=s.toCharArray(); 字符数组转化为字符串 String str=string.valueOf(c);

字符串就是若干字符弄成一串成了字符串;字符串数组就是若干个字符串弄在一起就组成了数组;字符串里面的每一个元素是字符;字符串数组里面的每一个元素是字符串.

最为明显的差别是二者装载有样多字符时,用函数strlen()返回的长度不同,且字符串的长度比字符数组长度大1.这是因为在初始化时,字符串是以指针标记其起始地址,而数组则以数组名标记的,数组名是常量,不像指针那样可以使用++或--使其指向不同位置的字符.

网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com