nanluming7891 2017-10-30 03:08 采纳率: 0%
浏览 987

VS2010MFC 返回值问题,很困扰我

int CDiskSpeedDlg::ZWrite(int t)
{

//int count=0;
CString write;
count = GetDlgItemInt(IDC_EDIT3);
m_write.GetWindowTextW(write);
int  i =_ttoi(write);
count=i;

CString *n =&disk[drive];
HANDLE hFile = CreateFile(L"n://T2.dat",
                            GENERIC_WRITE,
                            0,
                            NULL,
                            CREATE_ALWAYS,
                            FILE_FLAG_OVERLAPPED | FILE_FLAG_NO_BUFFERING | FILE_FLAG_WRITE_THROUGH,//FILE_FLAG_WRITE_THROUGH
                            NULL);


while(1)
{
    clock_t start = clock();

    for(int i=0;i<count*1024/Block_size;i++)
    {
        BOOL rc = WriteFile(hFile,buf,MB_SIZE*Block_size,&dwBytesWrite,&overlap);
            if(rc == 0)
        {
            if (GetLastError() == ERROR_IO_PENDING)
            {//当错误是ERROR_IO_PENDING,那意味着写文件的操作还在进行中
                //等候,直到文件写完
                GetOverlappedResult(hFile,&overlap,&dwBytesWrite,TRUE);
                }
                else
                {
                //错误操作
                }
        }
        WOffset = WOffset + MB_SIZE*Block_size;
        overlap.Offset     = WOffset & 0xffffffff ;
        overlap.OffsetHigh = (WOffset>>32) & 0xffffffff;
    }
    clock_t end = clock();

      t = t*count*1024*MB_SIZE;
      t = t/1024;
        t = t/(end-start);     //编译时没有错误。
        //执行是报错,XXX.exe 中的 0x0100457a 处有未经处理的异常: 0xC0000094: Integer division by zero。

    a=t; //a定义为成员变量int型
    CloseHandle(hFile);
}



return   a;

}

void CDiskSpeedDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码

CString z;
ZWrite(a);
UpdateData(TRUE);

//*************************************************************测试

z.Format(_T("%d"),a);
MessageBox(z);
//*************************************************************
v.Format(_T("%d"),a);
m_average_velocity.SetWindowTextW(v);

  • 写回答

3条回答

  • leadersmallsmile 2017-10-30 06:37
    关注

    int CDiskSpeedDlg::ZWrite(int t)===》int CDiskSpeedDlg::ZWrite(int &t)
    这样应该就没问题了。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器