gpt4 book ai didi

c - 我如何使用scanf读取c中的txt文件

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

所以我必须使用“<”运算符从命令行读取txt文件。

例如,我在终端中的可执行文件是:

.\文件 book1.csv 输出.csv < find.txt
其中 book1.csv 是我的 argv[1],我使用 fscanf 插入数据,output.csv 是我根据程序编写文件的位置,find.txt 是我从 txt 文件获取参数以便查找它的位置来自 book1.csv。

我只能使用 scanf,因为我必须从命令行参数中读取它。

这是我在 main 函数内读取 txt 文件的代码,但由于某种原因,它遇到了打印某种目录的无限循环。

char key[66];
while((scanf("%[^\n]s ", &key))!= EOF){
printf("%s\n",key);
}

这就是txt文件的组成

詹姆斯·邦德
乔伊
彼得

因此,我希望使用 printf 语句一一打印出这三个名称,但它会在我的输出中打印某种目录,并且是一个无限循环。

最佳答案

当您使用<时在命令行中,您的程序不应从文件中读取。这意味着,文件流替代 stdin (标准输入流)并且您的程序从它读取就像从键盘读取一样,例如与 scanf

问题出在 scanf 的使用上:阅读references详细信息和 %s说明符使用key没有& (key已经是内存地址,用&取地址会导致内存使用错误)

关于c - 我如何使用scanf读取c中的txt文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39469134/

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