在C中将char添加到char数组中

时间:2017-02-12 07:04:42

标签: c arrays char

我需要在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"在各个阵列的第零个位置?

1 个答案:

答案 0 :(得分:0)

您的声明

char *first_name[][BUFSIZE];

声明一个二维指针数组。如果你想要一个字符串数组,它应该是:

char first_name[][BUFSIZE];

然而,这缺少了第一个维度的大小。省略大小只能在函数参数声明中使用,因为它实际上是声明指针的简写(因为将数组传递给函数衰减到指针)或灵活数组成员的声明(必须是最后一个成员)一个struct,所以你不能在同一个结构中有两个)。我猜你的变量实际上是函数参数。

你不能使用赋值来填充C中的字符串,你必须使用strcpy()

strcpy(first_name[i], "John");