C语言里“字符串数组”的一种好记的表达方式
C里没有字符串类型,字符串都是CHAR或WCHAR数组,如果是字符串数组就是CHAR或WCHAR的二维数组了,二维数组对于脑子不好使的人来说,有点麻烦。其实对于有固定最大长度的字符串,可以用结构体数组来表示,这样子二维数组又变成一维数组了。例子:
typedef struct _STRING
{
CHAR buffer;
}STRING, *PSTRING;比如要定义一个有100个成员的字符串数组就直接写:STRING array;
//某个index的字符串就是:array.buffer要这样子就好理解多了。希望这帖子给纠结C语言字符串数组的小朋友一点帮助。 其实直接使用【二维字符数组】表示【字符串数组】也非常简单。例子如下:void test()
{
#define STRINGS_MAX_COUNT 6 //字符串的最大个数
#define STRING_MAX_LENGTH 4 //每个字符串可以容纳的最大字符个数
char strings={"aaa","bbb","ccc","ddd","eee","fff"};
for(int i=0;i<STRINGS_MAX_COUNT;i++){puts(strings);}
system("pause");
}
页:
[1]