0

我正在尝试将字符串插入 char* 指针,但显然不起作用。

我读到我可能需要使用 malloc 什么的?但其他网站并没有清楚地分享它们。

char* token[1000];
gets(token);
printf("%s\n",*token);

谢谢

更新:

现在我必须将指针(指向字符串)插入到具有所示参数的函数中。

int function(char *token[]);

char token[1000];
gets(token);
char*text=token;
printf("%s\n",text);

function(text);

预期的“char **”错误,但参数类型为“char *”</p>

4

1 回答 1

5

您的变量声明是错误的,您声明了一个包含 1000 个字符指针的数组,而不是 1000 个字符。删除*.

也永远不要使用gets(),总是使用,fgets()因为它更安全。没有什么可以阻止用户使用 输入超过 1000 个字符gets(),这将溢出缓冲区。

于 2013-11-04T13:43:59.073 回答