从文件中读取一行并在C中存储一个字符串数组

时间:2014-01-17 13:32:07

标签: c arrays string file-io io

我有一个像这样的.txt文件:

(A+B-C+6-8)
(A*5+4)

我想把每一行读成一个字符串并将它们放在一个字符串数组中。例如,str [10]将字符串“(A + B-C + 6-8)”作为其元素。然后我会对数组做一些事情,然后当我完成并且会有一个新行时,数组将重置并存储下一行字符串。

我应该使用什么功能? fgetsfgetcfscanf?我真的很困惑所有这些I / O功能。谢谢!

2 个答案:

答案 0 :(得分:2)

你应该使用fgets,一次读一行。

答案 1 :(得分:1)

获取第一行:

FILE* myFile = fopen("filename.ext", "r");
size_t maxNoChar = 100;
char * line = malloc(maxNoChar);
if(myFile != NULL)
{
    fscanf("%s", myFile, &line);
}