我需要在char数组中添加char。这是我的代码:
#define BUFFSIZE 1024
char *first_name[][BUFFSIZE];
char *last_name[][BUFFSIZE];
int j = 0;
first_name[][j] = "John";
last_name[][j] = "Doe";
这是进入" John"和" Doe"在各个阵列的第零个位置?
答案 0 :(得分:0)
您的声明
char *first_name[][BUFSIZE];
声明一个二维指针数组。如果你想要一个字符串数组,它应该是:
char first_name[][BUFSIZE];
然而,这缺少了第一个维度的大小。省略大小只能在函数参数声明中使用,因为它实际上是声明指针的简写(因为将数组传递给函数衰减到指针)或灵活数组成员的声明(必须是最后一个成员)一个struct
,所以你不能在同一个结构中有两个)。我猜你的变量实际上是函数参数。
你不能使用赋值来填充C中的字符串,你必须使用strcpy()
:
strcpy(first_name[i], "John");