Ubuntun下连续读写文件
在Ubuntu下写了一个测试函数,使用c语言库函数中的文件操作函数进行读写,结果写的时候正常,读的时候提示bad file descrition,大致意思是错误的文件描述符。可我gdb调试的时候打印出来的文件描述符和前面fwrite的时候文件描述符一致,很郁闷为什么会这样了。高手帮忙看看吧。
#include <stdio.h> #include <string.h>int main(void){ FILE *fd; int ret; fd = fopen("test.txt","w"); if ( ret <0) perror("open error"); char str[]="hi hero'; ret = fwrite(str,sizeof(char),strlen(str),fd); if ( ret <0) perror("write error"); ret = fseek(fd,0l,0); if ( ret <0) perror("seek error"); char str2[20]=""; ret = fread(str2,sizeof(char),strlen(str),fd); if ( ret <=0) perror("read error"); printf("%s",str2); return 0;}