注册 登录
编程论坛 C++教室

为什么我用MinGW做习题的时候,加个标准头文件会报出8百多的错误

haitao9999 发布于 2009-10-07 08:28, 1368 次点击
#include <iostream>
#include <process.h>
#include "winbase.h"//加上这个包含文件后报出错误825条,这是为什么,难道标准头文件也有错误吗?我
using namespace std;

int main(){
    srand(time(NULL));//本来想在这里添加参数为lpSystemTime.
    const int l = rand();
    cout<<l;
    system("PAUSE");
}
1 回复
#2
水云逸2009-10-07 21:42
要先包含wtypes.h,再包含winbase.h,反过来就编译不过了。

原因在于sleep是在winbase.h中定义的,在定义中包含DWORD,而DWORD则是在wtypes.h中定义的,因此必须先让winbase.h找到DWORD的定义。

另外:windows中sleep的原型是:

Sleep(

DWORD dwMilliseconds

);

时间单位是毫秒。

在linux中,sleep首字母则必须小写,时间单位为秒。

以上摘自Deniz在CSDN的博客
1