c语言中如何定义字符串,是用二维数组实现的吗

2024-12-03 13:09:06
推荐回答(5个)
回答1:

一维和二维的都可以;
一维的情况如下:
1,char string0[10];
2,char string1[]="prison break";
3,char string2[100]="michael scofield";
1句表示定义个长度为10的字符串,但未赋值,2句表示定义了一个字符数组string1,并进行初始化,使得其长度自动为13(字符串”prison break"中的字符个数加上结尾的'\0'),3句定义了一个有100个元素的字符数组string2,并初始化了17个元素("michael scofield";加上结尾的'\0');
二维的情况如下:
1,char string3[6][30];
2,char string3[6][30]={"joy","phosee","monses","chandele","ross","rather"};
此句表示有6个字符串,每个字符串的长度为30,每个字符串的初始值与“joy","phosee","monses","chandele","ross","rather"相对应;

回答2:

不一定啊,用char来定义。
例如char a[10]=”string”;
或者char a[][10]={”hello”,”c++”},那么a[0][10]="hello",a[1][10]="c++".

回答3:

一维数组 如定义char c[]="china"
这系统内存为 china\0 6位
所以 char c[]="china" 就是
char c[6]="china"
记住 初始化要多一位 留给'\0'

回答4:

string 可以的吧,或者就是只能用二维数组了。

回答5:

以0结尾的字符数组就是字符串