相关讨论
同样的代码,vc中的fgetc不能得到换行符0x0D,而gcc却可以,大家遇见过没有,是怎么回事呢?
by
er
-
C/C++
-
2005-11-14 11:53:12 阅读(912) 回复(2)
在另一个贴子中,我与一些朋友对 getc 展开了一些讨论. 由于觉得楼主最终未能明白
我的意思,所以我把我个人的看法总结出来,写在这里.我不太擅长说明,但已经尽力了.
任何人转本贴, 请务必把本人的名字写在显眼的位置. 8)
约定编译器为 gcc2/x86:
所以 char, unsigned char 为 8 位, int 为 32 位
请参考 http://bbs.chinaunix.net/forum/23/20031223/229236.html
(1) 字节的读取
在正常的情况下, getc 以 unsigned char 的方...
它们的返回值是由unsigned char转的int型,这样就不会返回负值,但是如果到了流文件的eof,值为-1,这样if (getc(stdin)==EOF)不会出错么?
#include
#include
#include
#include
int main(int argc,char *argv[])
{
int c;
FILE *fp;
fp = fopen("test.txt","a");
if (fp == NULL)
exit(10);
while ( (c = fgetc(fp)) != EOF){
printf("%c\n",c);
}
exit(0);
}
test.txt文件中有内容,但就是没有任何输出,请问大家是为什么?
by
hxl
-
C/C++
-
2009-04-21 20:16:07 阅读(1329) 回复(5)
#include "golbal.h"
int main(int argc, char *argv[])
{
char in;
while(1)
{
fprintf(stdout,"--------------------------------------------\n");
fprintf(stdout, "1.Add student's information.\n");
fprintf(stdout, "2.Delete student's information.\n");
fprintf(stdout, "3.Find by student's name.\n");
f...
by
奥丁@
-
C/C++
-
2008-04-08 20:15:19 阅读(3402) 回复(15)
程序如下:
#include ;
#include ;
int main(int argc,char *argv[])
{
FILE *in,*out;
char infile[80],outfile[80];
char c;
if (argc!=3) { printf("Please enter copy files!"); exit(0);}
if ((in=fopen(argv[1],"rb"))==NULL)
{
printf("Open infile is error!\n");
exit(0);
}
if ((out=fopen(argv[2],"wb"))==NULL)
{
printf("Open outfile i...
在标准输入上按回车结束 它总是把回车也读进来 这个问题遇到好几次了
by
奥丁@
-
C/C++
-
2008-04-12 13:12:26 阅读(4966) 回复(13)
fp = fopen( sFile,"r" );
if( fp )
{
if( !feof(fp) )
{
cnt = 1;
/* 判断文件的行数 */
while( (ch = fgetc(fp)) != EOF )
{
if( ch == '\n' )
cnt++;
}
fclose(fp);
sprintf( S_Window[4].sMeta,"%d", &cnt );
}
else
{
fclose(...
by
bgifu
-
C/C++
-
2010-06-03 15:58:01 阅读(9263) 回复(12)