字符串数组是以字符串为数组元素的数组,可以看成二维字符数组,定义代码如下:
char country[5][20]= //定义5个字符串,每个字符串不得多于20个字节(需要考虑'\0','\0'占一个字节)
{
"China", //占六个字节
"Japan",
"Russia", //占七个字节
"Germany",
"Switzerland" //占十二个字节
}
此方法浪费资源,占字节远少于20字节的字符串还需要为其分配20字节空间。
运用指针数组,虽需在数组中保存字符指针,也占用空间,但远少于字符串数组需要的空间。
指针数组的元素均为指针类型数据。指针数组中的每一个元素都相当于一个指针变量。
定义形式: 类型名 *数组名[数组长度]
#include<stdio.h>
void main()
{
int i;
char *country[]=
{
"China",
"Japan",
"Russia",
"Germany",
"Switzerland"
};
for(i=0;i<5;i++)
printf("%s\n",country[i]); //输出指针数组中的各元素
}