C++从文件 如何读入字符串?
答案:2 悬赏:20 手机版
解决时间 2021-02-01 10:23
- 提问者网友:蔚蓝的太阳
- 2021-02-01 06:56
C++从文件 如何读入字符串?
最佳答案
- 五星知识达人网友:煞尾
- 2021-02-01 08:22
你的意思是文件只有2行?那么本题一个完整的c程序如下,win-tc和Dev-c++下调试通过。程序可以处理每行个数不定的情况,这里限定最大行数为255,每行最大字符数为80,如果文件本身有80行,那么要读入80行只要改语句:
while(fgets(s[i],MAX,fp)!=NULL&&i<2)为while(fgets(s[i],MAX,fp)!=NULL&&i<80)即可。
while(fgets(s[i],MAX,fp)!=NULL&&i<2)为while(fgets(s[i],MAX,fp)!=NULL&&i<80)即可。
全部回答
- 1楼网友:你可爱的野爹
- 2021-02-01 09:30
你的意思是文件只有2行?那么本题一个完整的c程序如下,win-tc和dev-c++下调试通过。程序可以处理每行个数不定的情况,这里限定最大行数为255,每行最大字符数为80,如果文件本身有80行,那么要读入80行只要改语句:
while(fgets(s[i],max,fp)!=null&&i<2)为while(fgets(s[i],max,fp)!=null&&i<80)即可。
#include stdio.h
#include stdlib.h
#include conio.h
#define line 255
#define max 80
unsigned char s[line][max];
int readdat(void);
void writedat(void);
void main(){clrscr();if(readdat()){printf(can't open file wei1.dat!\n);return;}writedat();
printf(\n press any key to quit...);getch();return;}int readdat(void){file *fp;int i=0;unsigned char *p;
if((fp=fopen(wei1.dat,r))==null) return 1;
while(fgets(s[i],max,fp)!=null&&i<2){p=strchr(s[i],'\n'); if(p)*p=0;i++;}fclose(fp);return 0;}void writedat(void){file *fp;int i;fp=fopen(wei2.dat,w);
for(i=0;i<2;i++){printf(%s\n,s[i]);
fprintf(fp,%s\n,s[i]);}fclose(fp);}其中wei1.dat文件要存在,根据题目意思它的的内容为:
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯