*fp
fp=fopen("C:/Users/狐狸荆/Desktop/总输出.txt","w")
这里错了。
应该FILE
*fp
fp=fopen("C:\\Users\\狐狸荆\\Desktop/\\总输出.txt","w")
FILE
*f[3]
f[i]=fopen("C:/Users/狐狸荆/Desktop/%d.txt",i,"w")
这里错了。
应该
FILE
*f[3]
f[i]=fopen("C:\\Users\\狐狸荆\\Desktop\\%d.txt",i,"w")
C++用fstream中的getline()函数读取一行文件内容
C语言可用fgets()函数读取一行文件内容
两者有一些区别:
2、getline()可以设定读到哪个字符结束,默认是回车符,但指定的这个字符不会写到接收buf中。
3、fgets()读取数据,如果在读到回车符之前,达到了最大可读个数,则也会返回已读到的buf数据
4、getline()在读数据时,遇到指定字符之前,达到了最大可读个数,则会返回读错误
参考代码如下:
C++版本
#include <iostream>#include <fstream>
using namespace std
int main()
{
ifstream in("test.txt")
char str[1024]={0}
if ( in.fail() )
{
cout << "open file error" <<endl
return -1
}
while( in.getline(str,sizeof(str),'\n' ) )
{
cout << str<<endl
}
in.close()
return 0
}
C语言版本
#include <stdio.h>int main()
{
FILE *fp
fp=fopen("test.txt","r")
char str[1024]
if ( fp == NULL )
{
printf("open file error\n" )
return -1
}
while( fgets(str, sizeof(str), fp ) )
{
printf("%s", str )
}
fclose(fp)
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)