使用 fgetc 从文件读取时出现奇怪的字符
Strange chars while reading from file with fgetc
当我打印变量 answer 时,它包含几个奇怪的字符。可能是什么原因?
int flag=0;
char answer[512];
char a[2];
a[1]='[=10=]';
int c;
int status=1;
do {
c = fgetc(pp);
if( feof(pp) ) {
break ;
}
if(c=='F' || status==0){
a[0]=(char)c;
strcat(answer,a);
status=0;
}
} while(TRUE);
strcat
期望目标字符串是有效的——这意味着它必须以 null 结尾。您没有明确终止 answer
字符串。在循环之前添加 answer[0]=0
。
当我打印变量 answer 时,它包含几个奇怪的字符。可能是什么原因?
int flag=0;
char answer[512];
char a[2];
a[1]='[=10=]';
int c;
int status=1;
do {
c = fgetc(pp);
if( feof(pp) ) {
break ;
}
if(c=='F' || status==0){
a[0]=(char)c;
strcat(answer,a);
status=0;
}
} while(TRUE);
strcat
期望目标字符串是有效的——这意味着它必须以 null 结尾。您没有明确终止 answer
字符串。在循环之前添加 answer[0]=0
。