gpt4 book ai didi

c - 将字符串传递给 STD 的循环

转载 作者:行者123 更新时间:2023-11-30 17:51:27 26 4
gpt4 key购买 nike

我是一个编程技巧非常糟糕的菜鸟。

我有一个文本文件,内容如下:

(括号中的大字符串)整数值

(括号中的大字符串)整数值

(括号中的大字符串)整数值

(括号中的大字符串)整数值

我有一个程序可以读取标准输入上的字符串并返回一个值。

我需要某种方法将字符串(并且仅是字符串)传递给程序,并将其返回的值与文本文件中的值进行比较。

我尝试使用 Bash 脚本来完成此操作,但我感到非常困惑和沮丧,所以我想尝试使用 C 来完成此操作。

int main(void)
{
int x;
FILE *fp;
fp = fopen("vectors.lst", "r");

if (fp == NULL) {
printf("Failed to open\n");
exit(0);
}

for(i = 1; i<10400; i++){


//This is where I am confused

while(fscanf(fp, "%s %d",passedstring,correctvalue) != EOF){

printf("%s",passedstring);


}
}
exit(0);
}

我的问题是:

我不知道如何仅迭代 for 循环中的字符串,同时仍然只读取直到文件末尾。我开始认为使用 C 来实现这个目的是一个糟糕的主意。

有人可以提供一些建议吗?如果有一种简单的方法来实现它,我仍然愿意使用脚本。

最佳答案

既然你知道字符串将以 ')' 结尾,为什么不可以使用 getchar() 来读取字符串。使用类似的东西:

  do {
c=getchar();
//process input
} while (c != ')');

关于c - 将字符串传递给 STD 的循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16721591/

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