|
//来调试一下就知道了.输入12 34 56
//...
while(buffer[0]!='\r')
{ //这个地方监视一轮就能出现问题
input=getche(); //input==1.
buffer[1]=buffer[0]; //buffer[1]=='\0',buffer[0]=='\0',input==1.
buffer[0]=input; //buffer[1]=='\0',buffer[0]=='1',input==1.
if(buffer[0]!=' ') //buffer[0]=='1'通过
fileo<<buffer[1]; //问题在这里,,buffer[1]=='\0'
} //试图在文件里面过滤掉backspace符
//文件里有\0... 后面的已经没必要知道了,但肯定不是\0 1 2 3 4 ...
printf("写入完成!\n");
fileo.close();
printf("文件关闭!\n");
ifstream filei("C:\\测试文件夹\\test.bin",ios::binary);
char info[100];
for(int j=0;j<100;j++)
info[j]='\0';
filei.read(info,99);//read()读取到第一个字符时就遇到\0.也就退出了,
//所以info是空的,当然就没有输出
cout<<"读取完毕,输出:>"<<info<<endl; //改变代码后在“读取完毕,输出”后没有输出任何东西!!!
filei.close();
return 0;
} |
|