VS2012中fwrite,fopen_s的问题
我的代码如下:FILE*fptr;errno_terr;if((err=fopen_s(&fptr,"files/readerinfo.dat","w"))!=0){fw...
我的代码如下:
FILE *fptr; errno_t err;
if ((err=fopen_s(&fptr,"files/readerinfo.dat","w"))!=0){
fwrite(&reader_info,sizeof(reader_info[100]),100,fptr);
fclose(fptr);}
if ((err=fopen_s(&fptr,"files/bookinfo.dat","w"))==0){
fwrite(&book_info,sizeof(book_info[100]),100,fptr);
fclose(fptr);}
if ((err=fopen_s(&fptr,"files/systimes.dat","w"))==0){
fprintf(fptr,"%d %d",days,hours);
fclose(fptr);}
不成功读出文件。
之前的代码用fopen,在C-FREE中能正常使用,现在VS2012中fopen报错,只能用fopen_s就在呢么也读不出来了。 应该怎么改正呢?
补充:粘贴失误,第二行是:
if ((err=fopen_s(&fptr,"files/readerinfo.dat","w"))==0){ 展开
FILE *fptr; errno_t err;
if ((err=fopen_s(&fptr,"files/readerinfo.dat","w"))!=0){
fwrite(&reader_info,sizeof(reader_info[100]),100,fptr);
fclose(fptr);}
if ((err=fopen_s(&fptr,"files/bookinfo.dat","w"))==0){
fwrite(&book_info,sizeof(book_info[100]),100,fptr);
fclose(fptr);}
if ((err=fopen_s(&fptr,"files/systimes.dat","w"))==0){
fprintf(fptr,"%d %d",days,hours);
fclose(fptr);}
不成功读出文件。
之前的代码用fopen,在C-FREE中能正常使用,现在VS2012中fopen报错,只能用fopen_s就在呢么也读不出来了。 应该怎么改正呢?
补充:粘贴失误,第二行是:
if ((err=fopen_s(&fptr,"files/readerinfo.dat","w"))==0){ 展开
展开全部
1、 你这个函数fwrite(&book_info,sizeof(book_info[100]),100,fptr);
使用是不是错了?这个函数的第2个参数是表示一个项目的大小,第3个参数就表示多数个项目。
按你写的就是往文件里写入100*100个字节了。
如果你是想把book_info变量的东西写进去应该是
fwrite(&book_info,sizeof(char),100,fptr);
2、
if ((err=fopen_s(&fptr,"files/systimes.dat","w"))==0){ //这里是读还是写? 读用r
fprintf(fptr,"%d %d",days,hours);
fclose(fptr);}
使用是不是错了?这个函数的第2个参数是表示一个项目的大小,第3个参数就表示多数个项目。
按你写的就是往文件里写入100*100个字节了。
如果你是想把book_info变量的东西写进去应该是
fwrite(&book_info,sizeof(char),100,fptr);
2、
if ((err=fopen_s(&fptr,"files/systimes.dat","w"))==0){ //这里是读还是写? 读用r
fprintf(fptr,"%d %d",days,hours);
fclose(fptr);}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询