C語言中實現字符串數組
所謂指針數組是指元素均爲指針類型數據的數組,也就是說,指針數組中的每個元素相當於一個指針變量,它的值是地址。一維指針數組的定義形式爲:
類型名 *數組名[數組長度];
例如:
int *p[4];
下面給個實例說明如何創建和使用字符串數組:
#include <stdio.h>
int main()
{
char *name[6] = {"Rainer","Richie","Crystal","Stef","Sammy"};
//定義一個指針數組,並將其初始化。這時候name[0]將存儲字符串"Rainer"的
//第一個字符'R'的地址,依此類推。
char *p;
//定義一個指向字符變量的指針變量
int i;
name[5] = "Jacky";
//將數組第六個元素賦值爲"Jacky"
for(i = 0;i < 6;++i)
{//輸出數組內容
p = *(name + i);
//name + i即爲name[i],*name[i]即爲數組name的第i個元素的值,
//即爲第i個元素中字符串的首字符的地址
printf("%s ",p);
//注意格式字符串中的s
}
printf("\n");
return 0;
}
從以上代碼可以看出,用指針數組實現字符串數組是很簡單的。定義了一個字符指針數組後就像使用普通數組一樣對它進行操作,只是在輸出數組內容的時候注意一下就沒問題了。