C打开文件并阅读

时间:2017-04-04 15:34:39

标签: c io

我有以下代码

int open(char* name) {

FILE *stream = fopen(name, "r");

fscanf(stream,"%d", &n);

    i = 0;

    while(i < n) {
        fscanf(stream, "%s %d\n", stringArr[i], &val);

        intArr[i] = val + counter + 1;

        i++;
    }

    while(fscanf(stream, "%[^\n]\n", outputArr[counter]) == 1) {

        counter++;
    }

    i = 0;
}

完美无缺。

我是C的新手,想了解更多有关效率的信息,所以我想知道有更好的方法来写这个吗?

我将解释文件的工作原理以及该方法应该做什么

该文件看起来像

2
TREE 4
SIX 1
Welcome, how are you?
This is the beginning of the end.

您看到的第一个数字是&#34;重要字数&#34;即TREE 4, and SIX 1

因此,我们首先必须阅读重要单词的数量,然后我们将words and the values放入symbol table类似的结构中。我只使用两个数组,一个用于words,另一个用于values。这是第一个while loop所做的事情。

第二个while循环,在文件上继续到非重要行,并将它们读取到outputArray。

这已经很长了,但我的基本问题是,有没有办法让这段代码变得更好?

谢谢!

0 个答案:

没有答案