fputs() 报错
本帖最后由 dt3tc 于 2018-4-22 08:45 编辑fputs() 报错,用perror 打印出错信息 翻译过来 是 "坏的文件描述符",但是我只用了一个文件描述符而且在调用fputs() 以前顺利关闭了.
fputs()是通过 文件指针定位 文件的
源代码如下,谢谢.
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
#define filename "./a1.txt"
int main(void){
int fd=0;
fd=open(filename,O_RDWR|O_CREAT,0755);
if(fd==-1){
perror("fd,open,filename");
return 0;
}
if(close(fd)==-1){
perror("close,fd");
return 0;
}
char a="hello";
FILE *fp=NULL;
fp=fopen(filename,"r");
if(fp==NULL){
perror("fp,fopen,filename");
return 0;
}
if(fputs(a,fp)==-1){
perror("fputs,a,fp");
return 0;
}
if(fclose(fp)==-1){
perror("fclose,fp");
return 0;
}
return 0;
} 解决了,应以"r+"参数 调用 fopen(), 谢谢 学习学习 学习了谢谢 {:5_106:}
页:
[1]