gpt4 book ai didi

c - 输入重定向不适用于我的程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:38:57 24 4
gpt4 key购买 nike

我正在尝试重定向我的程序的输入。这是我在终端中输入的命令:

./hello < name

“名称”是一个包含单个字符串的文件。hello 是一个已编译的 C 程序,由以下代码组成:

int main(int argc, char *argv[])
{
char message[100] = "Hello ";
if(argc>1)
{
strcat(message, argv[1]);
strcat(message, "\n");
}
else
{
strcat(message, "there\n");
}

printf("%s", message);
return 0;
}

据我所知,参数现在应该是名称文件的内容。但是在程序中我无法检测到任何参数(并打印出“你好”)。

最佳答案

这将读取文件 name 并将其放入您的标准输入,而不是第一个参数。

可以使用fgetsgetcharscanf等方式读取

等价物:

int c;

printf("Hello ");

while((c = getchar()) != EOF) {
putchar(c);
}

puts("\nthere");

关于c - 输入重定向不适用于我的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19083110/

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