ReadFile问题,求解?
本帖最后由 guangguang465355249 于 2013-07-14 12:59:37 编辑 char res[BUFSIZ]={0};
while(ReadFile(hRead,res,BUFSIZ-1,&bytesRead,NULL)&&bytesRead!=0)
{
std::cout<<res;
memset(res,0,BUFSIZ);
}
这样就可以
char res[300]={0};
while(ReadFile(hRead,res,299,&bytesRead,NULL)&&bytesRead!=0)
{
std::cout<<res;
memset(res,0,BUFSIZ);
}
这样就不行了
求解?
[解决办法]
确定BUFSIZ 小于 300?
否则这个memset(res,0,BUFSIZ);越界了
[解决办法]
char res[300]={0};
while(ReadFile(hRead,res,299,&bytesRead,NULL)&&bytesRead!=0)
{
std::cout<<res;
memset(res,0,300);
}
[解决办法]
定义了大小为300的数组,却用BUFSIZ的大小进行memset
[解决办法]