b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

fscanf 换行_fscanf读两位数字_fscanf读单个字符

电脑杂谈  发布时间:2016-11-25 14:07:14  来源:网络整理
fscanf 换行fscanf 换行

请教如何从文件中读取字符串,遇到换行不结束,谢谢!

我在写一个词法扫描器,老师要求从文件中读取字符并进行扫描

我用fscanf函数,但是遇到换行就读取结束,只能对文件中第一行字符进行扫描

请高手指教,有没有什么办法能读取文件中的所有字符并放在字符数组里

例如:

test.txt文件内容如下:

sadfefwq213213%^@#$342 4121

1234 4!@#fds1234

[[21ffda9

想读取这个文件的所有字符,存放在pro[max]里.

我的源代码如下:

void read()

{

FILE *fp;

int k;

fp=fopen("test.txt","r");

for(k=0;k<max-1;k++)

{

fscanf(fp,"%c",&pro[k]);

}

pro[k]='\0';

fclose(fp);

}

而经过操作之后,pro[max]只包含文件中第一行的所有字符,所以我纠结了一下午....

希望高手解答!!! 不胜感激! 谢谢!!

回答

回答3:

#include <stdio.h>

#include "string.h"

int main(void)

{

FILE * stream;

char buf[1024];

memset(buf,0x00,sizeof(buf));

if ((stream = fopen("test.txt", "r")) == NULL)

{

fprintf(stream,"Cannot open output file.\n");

return 1;

}

fread(buf, 1024, 1, stream);

printf("%s\n", buf);

fclose(stream);

return 0;

}

用这个可以实现,具体可以去参考下fread函数2014-07-01keepmoving168


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-21829-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 鲁魏公
        鲁魏公

        没有一发炮弹击穿主装甲

      • 吴华丽
        吴华丽

        多数都是自作孽不可活”更是明白话

      • 周宣王姬静
        周宣王姬静

        其实我也觉得这个确实还不错

      热点图片
      拼命载入中...