我的问题是:13(ascii)可以作为一个字符用fputc函数存入一文本文件,但是为什么不能以fgetc读取出来???有朋友讲13是回车符;没错,13的确是回车,但它也确实是一个字符呀,它应该可以被读取,并且能以%d的形式打印出来的呀!但现在情况是这样的,若是该文本文件中有三个字符(分别为10,13,67),发现fgetc会直接跳过13这个字符,读取出来的仅仅是10以及67这两个字符。为什么??谢谢大家!
再议13(ascii)的读取
我的问题是:13(ascii)可以作为一个字符用fputc函数存入一文本文件,但是为什么不能以fgetc读取出来???有朋友讲13是回车符;没错,13的确是回车,但它也确实是一个字符呀,它应该可以被读取,并且能以%d的形式打印出来的呀!但现在情况是这样的,若是该文本文件中有三个字符(分别为10,13,67),发现fgetc会直接跳过13这个字符,读取出来的仅仅是10以及67这两个字符。为什么??谢谢大家!
一个很怪的现象 郁闷
代码1:
#include <stdio.h>
int main(void)
{
FILE *fp;
char ch;
fp=fopen("file.txt","r");//文件中包含 ASCII 为13的字符......
while ((ch=fgetc(fp))!='\0')
{
printf("%c",ch);
}
fclose(fp);
printf("%c",13);//在这打印个13对应的字符可以实现清屏
return(0);
}
代码2:
#include <stdio.h>
int main(void)
{
FILE *fp;
char ch;
fp=fopen("file.txt","r");
while ((ch=fgetc(fp))!='\0')
{
printf("%c",ch);
}
fclose(fp);
printf("%c",13);//这个没有清屏的功能 ...?
return(0);
}
[此贴子已经被作者于2007-11-12 21:31:28编辑过]
[此贴子已经被作者于2007-11-14 11:33:20编辑过]
13 是回到本行首 并清除本行内容
哎 为了得到这个结果 可是被人骂了LJ的
所以就造成了不能输出的假象