gpt4 book ai didi

c - C语言中函数的返回值是字符串

转载 作者:行者123 更新时间:2023-11-30 16:39:46 25 4
gpt4 key购买 nike

我用 C 编写了一些带有两个函数的代码。

一个函数查找一个单词(字符组),然后将其保存到一个字符串中。另一个函数显示字符串内部的内容。我找不到将返回值保存到字符串的正确方法。

这是我的代码:

#include <stdio.h>

char SchrijfString(void);
void LeesString(char);

int main(void)
{
char x[60];
x = SchrijfString(x);
LeesString(x);
return 0;
}

char SchrijfString(char x[])
{
printf("geef een string in: \n");
gets(x);
return x;
}

void LeesString(char x[])
{
printf("In de string zit:\n %s", x);
getchar();
}

最佳答案

gets 函数已使用用户指定的字符串填充 x,因此无需从 SchrijfString 返回任何内容或进行赋值任何 x 回到 main.您的函数原型(prototype)与定义不匹配。它们必须相同。

此外,gets 已被弃用,因为它不安全。请改用 fgets

void SchrijfString(char x[], int len);
void LeesString(char x[]);

int main(void)
{
char x[60];
SchrijfString(x, sizeof(x));
LeesString(x);
return 0;
}

void SchrijfString(char x[], int len)
{
printf("geef een string in: \n");
fgets(x, len, stdin);
}

关于c - C语言中函数的返回值是字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46937084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com