gpt4 book ai didi

c - 从标准输入读取命令行参数

转载 作者:太空宇宙 更新时间:2023-11-04 08:53:09 27 4
gpt4 key购买 nike

所以我想让自己运行 ./program 以便它允许输入管道文本文件。

例如:./program < sometext.txt

我知道我无法使用 argv 获取数据,但我一直在尝试用 google 搜索如何从 stdin 获取数据,但我似乎找不到合适的关键字来 google 以获得对这个怎么做。我确定它是使用 scanf 完成的,但我仍然很难理解它。

任何类型的见解都会有所帮助,我不需要确切的代码,但如果它足够简单,那将非常有帮助。谢谢!

最佳答案

这是一个简单的示例(没有错误检查),它将 stdin 读入动态分配的字符数组,然后将其打印回 stdout:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
int bufferSize = 100;
char *buffer = malloc(bufferSize);
int length = 0;
int c;

while ((c = getchar()) != EOF)
{
if (length == bufferSize)
{
bufferSize *= 2;
buffer = realloc(buffer, bufferSize);
}

buffer[length++] = c;
}

for (int j = 0; j < length; j++)
{
putchar(buffer[j]);
}

free(buffer);
return 0;
}

希望这能帮助您入门。

关于c - 从标准输入读取命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18906457/

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