二维字符数组与字符串数组的使用

二维字符数组与字符串数组的使用

一维字符数组的定义形式如下:

<存储类型>  char  <数组名>[<常量表达式>]={<初始值>}

二维字符数组定义的形式是:

<存储类型>  char  <数组名>[<常量表达式e1>] [<常量表达式e2>]={<初始值>}

字符串数组定义的形式是:

<存储类型>  string  <数组名>[<常量表达式e1>] ={<初始值>}

二维字符数组定义的数组元素个数为:e1*e2。同数值数组一样,字符数组的每一维元素的下标都是从0开始。

例如:

char  aa[8]定义了长为8的一维字符数组aa

char  bb[4][5]定义了4*5的二维字符数组bb

string  cc[3]定义了含3个字符串的一维数组cc

 

关于字符数组的初始化有如下两种方式:

(1)    用字符常量初始化数组

例如:

char ch[5]={'a','b','c','d','\0'};

或者:char ch[ ]={'a','b','c','d','\0'};    /*可以缺省数组定义长度,但不能少结尾符*/

char st[3][6]={{'c','h','i','n','a','\0' },{'j','a','p','a','n','\0'},{'k','o','r','e','a','\0'}}; 

或者:

char st[ ][6]={{'c','h','i','n','a','\0' },{'j','a','p','a','n','\0'},{'k','o','r','e','a','\0'}};

/*可以缺省行下标,但不能缺省列下标*/

 

(2)    用字符串常量初始化数组

例如:

char ch[6]={"abcd"};

 

uploading.4e448015.gif正在上传…重新上传取消

 

例如:

 char st[3][6]={"china","japan","korea"};

或者:

char st[ ][6]={"china" ,"japan","korea"};

/*可以缺省行下标,但不能缺省列下标*/

 

例如:

 string st[]={"china","japan","korea"};

 

 

以下两段程序输出结果一样

 

 

// 二维字符数组

char a[3][6]={"Tread","Micro","Soft"};
for(int i=0;i<3;i++)   {
for(int j=0;j<6;j++)
cout<
cout<
 
       // 字符串数组
string b[]={"Tread","Micro","Soft"};
for(i=0;i<3;i++)
cout<
 

 

你可能感兴趣的:(库)