我有一个程序:
#include <stdio.h>
#include <string.h>
// ne menuvaj ovde
void wtf() {
FILE *f = fopen("text.txt", "w");
char c;
while((c = getchar()) != EOF) {
fputc(c, f);
}
fclose(f);
}
int main() {
wtf();
FILE *vlezna;
vlezna=fopen("text.txt","r");
float words=0,lines=0,average=0;
int counter=0;
char ch;
while((ch=fgetc(vlezna))!=EOF)
{
if(ch==' ')
words++;
if(ch=='\n');
{
words++;lines++;
}
}
average=words/lines;
printf("%f",average);
fclose(vlezna);
vlezna=fopen("text.txt","r");
while((ch=fgetc(vlezna))!=EOF)
{ words=0;
if(ch==' ')
words++;
if(ch=='\n')
{
words++;
if(words<average) counter++;
}
}
fclose(vlezna);
printf("%d",counter);
}
所以我假设第一个函数写入文件。但我想首先应该创建文件,我不知道如何(除了右键单击新文本文档)。 另外我不知道如何在文件的开头返回指针,所以我关闭它并再次打开它,假设那将在开头返回指针?
答案 0 :(得分:2)
fopen
, "w"
如果该文件不存在,则创建该文件
请阅读此处的文档:http://www.cplusplus.com/reference/cstdio/fopen/
答案 1 :(得分:1)
无需创建。对于fopen
的手册页:
``w'' Truncate to zero length or create text file for writing. The stream is positioned at the
beginning of the file.
要设置文件指针,请使用fseek
。但是,要阅读和,您需要使用不同的开放标记。