字符串数组有两种表示方法,
第一种是二维数组:
/*
字符串数组本质就是二维数组,其中的每个字符串又是一个一维数组
*/
char strArr[2][100]={
"itheima",
"superChen"
};
第二种是字符指针数组:
//方式2:定义字符指针数组
char* strArr[2]={
"itheima", // 这里字符串字面量会隐式退化为指向其第一个字符的指针,即char*类型
"superChen"
};
该一维数组中的每一个元素都是一个 char 类型的地址:
第一个指针 strArr[0] 指向第一个字符串中的第一个字符。即 *strArr[0] 等于 'i'。
第二个指针 strArr[1] 指向第二个字符串中的第一个字符。即 *strArr[1] 等于 's'。
每个 strArr[i] 都表示一个字符串,指针都指向对应字符串的第一个字符。
因此实际上这个一维数组并不存放真正的字符串,而只是存放字符串的地址。