重要的一点。DWORD 现在表示32bit 无符号整数,即使以后Windows升级到64位,DWORD 仍然是32bit 无符号整数(也许以后的 long 不是32bit了,只需要重新定义一下 DWORD 就可以了)。
对于那些直接和位数有关的整数,最好不用 int, long, short 之内的类型,因为这些类型的位数可能不确定(比如,在16位程序里,int是16位的,在32位程序里,int是32位的,谁知道在以后的64位程序里,int是多少位,long 又是多少位)。用重新定义的类型就没有这方面的问题了,最多到时候修改一下定义就可以了,而不需要在程序里一行一行的查找/修改变量内=类型了。
#include<windows.h>
#include<iostream>
using namespace std;
int main()
{
char username[20];
DWORD size = 20;
cout<<"DWORD占字节数sizeof(DWORD)="<<sizeof(DWORD)<<endl;
cout<<"int占字节数sizeof(int):"<<sizeof(int)<<endl;
GetUserName(username,&size);
cout << "当前用户:" << username<< endl;
system("pause");
return 0;
}