以下是我的代码。我的问题是,我的目标文件总是比原始文件有更多的字符串。然后,在for循环中,而不是使用i < sizeof more
,我意识到我应该使用i < sizeof file2
。现在我的问题是,如何获得file2的大小?如何在visual C++中获取文件的大小?
int i = 0;
FILE *file2 = fopen(LOG_FILE_NAME,"r");
wfstream file3 (myfile, ios_base::out);
// char more[1024];
char more[SIZE-OF-file2];
for(i = 0; i < SIZE-OF-file2 ; i++)
{
fgets(more, SIZE-OF-file2, file2);
file3 << more;
}
fclose(file2);
file3.close();
OP并没有将C称为Visual C,C++或Visual C++。他/她实际上是在谈论Visual C++,如果你读到这个问题的话。我非常喜欢C89/C99,就像下一个人一样,并且通常会讨厌Windows。虽然解决“Visual C++”问题的最有效方法是使用它们提供的API。至于“地狱里的代码腐烂”,请尝试使用预处理器。这就是它存在的原因。 – 2010-05-05 01:13:52
...基本上C与微软具体扩展... – aviraldg 2010-05-05 01:15:41
...什么预处理器? :) – 2010-05-05 01:19:33