gpt4 book ai didi

c - 在c中获取函数错误。试图返回字符串值。

转载 作者:太空宇宙 更新时间:2023-11-04 06:33:33 24 4
gpt4 key购买 nike

我正在尝试使用 getinput 函数返回用户输入的字符串值。但我得到了以下错误: 1. 'getinput' 的类型冲突 2. 之前隐含的 'getinput' 声明在这里。有人可以向我解释这些错误是什么吗?

gets 函数应该从用户那里读取两个不同的句子,并将其存储在变量 userinput1 和 userinput2 中。

    #include <stdio.h>
#include <string.h>

char input1[1000] = {0};
char input2[1000] = {0};

int main(){
getinput();
char input[2000];
sprintf(input, "%s %s", input1, input2);
printf("%s\n", input);
return 0;
}

const char * getinput() {
printf("please enter the something\n");
scanf("%999[^\n]%*c", input1);
printf("please enter the next input\n");
scanf("%999[^\n]%*c", input2);
return input1, input2;
}

最佳答案

这一行

return input1, input2; 

使用逗号运算符并返回 input2。由于您已将 input1input2 声明为文件范围变量,因此无需返回它们——它们都在 main() 的范围内> 和 getinput()。删除返回行并使用

void getinput(void);

int main (void)
{ ... }

void getinput (void)
{
...
}

我也建议看看

scanf("%999[^\n]%*c", input2);

你的意思是不是

scanf(" %999[^\n]", input2);

注意跳过所有空白的额外空白(例如,之前的换行符)。

关于c - 在c中获取函数错误。试图返回字符串值。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17765495/

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