如何将stdout数据传递给变量c?

时间:2019-12-08 00:19:19

标签: c

我正在制定一种算法,该算法根据输入的数字从文件中获取数据并提供一些信息,我想将这些信息传输并将其传递给变量或直接将其写入文件中

理想的计划是直接转到文件 我到目前为止所做的一切,但无济于事

pipe

文件Test.txt的内容为

#include <stdio.h>
#include <string.h>
#define MAXC 1024   
#define MAXN  128

int main (int argc, char **argv) {


    FILE *fp;
    fp = fopen("Test.txt","r");



    if (!(fp = fopen ("Test.txt", "r"))) {
       printf("ERROR");
        return 1;
    }

    for (;;) { 
        char buf[MAXC] = "";
        int id = 0, inputid = 0;

        rewind (fp);   
        fputs("enter ID: ", stdout);
        fflush (stdout);   

        if (!fgets (buf, MAXC, stdin) || strcmp (buf, "quit\n") == 0)
            break;


        if (sscanf (buf, "%d", &inputid) != 1) {
            fputs ("error: invalid integer input.\n", stderr);
            break;
        }

        while (fgets (buf, MAXC, fp))  
            if (sscanf (buf, "ID : %d", &id) == 1 && id == inputid)
                break;

        if (id != inputid) {  
            fputs ("error: ID not found.\n", stderr);
            continue;
        }

        FILE * fp1;
        fp1 = ("Test1.txt","a");
        while (fgets (buf, MAXC, fp) && *buf != '=')
            fputs (buf, stdout);
            fprintf(fp1,buf,stdout);
            fclose(fp1);
    }

    fclose (fp);   

    return 0;
}

我读了一些有关将stdout内容传递给变量的内容,但也无济于事。

0 个答案:

没有答案
相关问题