- 1.可以作为windows GUI程序的入口函数的是( )
- 2.在windows窗口编程中我们很少直接使用基本数据类型,取而代之的是一些新的自定义类型,以下对自定义类型的解释正确的是( )
- 3.windows操作系统具有面向对象的特性,在32位下,以下关于句柄的说法错误的是( )
- 4.windows系统是以消息驱动的,可以说,消息就是系统的动力源泉,那以下对windows消息的描述错误的是( )
- 5.窗口回调的参数是( )
- 6.窗口的创建过程是( )
- 7.创建图片控件的类名是( )
- 8.不属于窗口三大风格的是( )
- 9.SetWindowLong函数不可以实现以下哪些功能( )
- 10.以下会产生WM_NOTIFY消息的是( )
- 11.用来创建模态对话框的API是( )
- 12.对话框中的所有控件都有一个相同的风格,这个风格是( )
- 13.以下不会产生WM_COMMAND消息的是( )
- 14.当菜单产生WM_COMMAND消息的时候如何判断菜单的ID值?( )
- 15.不属于创建窗口的API是( )
- 16.WNDCLASS结构体是如下定义,其中最有哪几个字段是必不可少的( )
- 17.关于DllMain函数的说法错误的是( )
- 18.关于动态链接库导出方式说法正确的是( )
- 19.关于调用动态链接库中函数的说法正确的是( )
- 20.在导出函数前添加extern “C”的主要用意是( )
1.可以作为windows GUI程序的入口函数的是( )
2.在windows窗口编程中我们很少直接使用基本数据类型,取而代之的是一些新的自定义类型,以下对自定义类型的解释正确的是( )
BOOL 等价于bool
UINT 等价于int
WORD 等价于short
DWORD 等价于long
WCHAR 等价于wchar_t
3.windows操作系统具有面向对象的特性,在32位下,以下关于句柄的说法错误的是( )
句柄的类型有很多,如HANDLE,HMENU,HWND…
柄都是用void*重定义的出来的类型 只有HANDLE
句柄就是一个四字节大小的整数
句柄代表一个windows中的对象,程序员通过句柄来操作此对象
4.windows系统是以消息驱动的,可以说,消息就是系统的动力源泉,那以下对windows消息的描述错误的是( )
PostMessage发送消息时,会将消息发送到消息队列
消息是一个4字节整数
/*
* Message structure
*/
typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
#ifdef _MAC
DWORD lPrivate;
#endif
} MSG, *PMSG, NEAR *NPMSG, FAR *LPMSG;
一个消息的产生就代表了一个事件的产生
SendMessage发送消息时,会直接调用窗口回调函数
5.窗口回调的参数是( )
UINT,HANDLE,WPARAM,LPARAM
HWND,HINSTANCE,LPARAM,WPARAM
HANDLE,UINT,LPARAM,WPARAM
HWND,UINT,WPARAM,LPARAM
对话框回调函数返回值是long
窗口回调函数返回值是int
6.窗口的创建过程是( )
第二次你做错了这个,选成了第四个<br />1.定义窗口类<br />2.更新显示窗口<br />3.消息泵<br />4.创建窗口<br />5.注册窗口类<br />1-5-4-3-2<br />5-1-4-3-2<br />1-5-4-2-3<br />5-1-4-2-3
7.创建图片控件的类名是( )
8.不属于窗口三大风格的是( )
9.SetWindowLong函数不可以实现以下哪些功能( )
10.以下会产生WM_NOTIFY消息的是( )
11.用来创建模态对话框的API是( )
CreateDialog
DialogBox
CreateWindowEx
CreateWindow
12.对话框中的所有控件都有一个相同的风格,这个风格是( )
WS_DISABLE
WS_CHILD
WS_BORDER
WS_VISIBLE
13.以下不会产生WM_COMMAND消息的是( )
14.当菜单产生WM_COMMAND消息的时候如何判断菜单的ID值?( )
lParam的高两字节
wParam的低两字节
wParam的高两字节
lParam的低两字节
15.不属于创建窗口的API是( )
CreateFile
CreateDialog
CreateWindowEx
DialogBoxParam
16.WNDCLASS结构体是如下定义,其中最有哪几个字段是必不可少的( )
typedef struct tagWNDCLASSA {
①UINT style;
②WNDPROC lpfnWndProc;
③int cbClsExtra;
④int cbWndExtra;
⑤HINSTANCE hInstance;
⑥HICON hIcon;
⑦HCURSOR hCursor;
⑧HBRUSH hbrBackground;
⑨LPCSTR lpszMenuName;
⑩LPCSTR lpszClassName;
} WNDCLASSA, PWNDCLASSA, NPWNDCLASSA, *LPWNDCLASSA;
②⑩
⑤⑩①②②⑤
17.关于DllMain函数的说法错误的是( )
DllMain有四个参数 (实例句柄、调用原因、保留参数),返回值int
DllMain是dll的入口函数
DllMain可有可无,不影响dll的函数调用
进程、线程创建和退出时会调用DllMain
18.关于动态链接库导出方式说法正确的是( )
使用extern ”C”就是使用声明导出
有两种导出方式,即通过声明导出与def脚本文件导出
使用声明导出时,可以指定导出序号
定义导出使用__declspec(dllexport)声明导出时必须加上extern “C”
19.关于调用动态链接库中函数的说法正确的是( )
显示调用,即通过声明导出函数,载入Lib文件,直接调用导出函数即可
隐式
通过LoadLibrary+GetProcAddress可以找到DLL中的所有函数
不是所有
动态链接库与静态库没有区别
LoadLibrary+GetProcAddress使用完毕之后,应该用FreeLibrary卸载DLL
20.在导出函数前添加extern “C”的主要用意是( )
可以导出更多信息
添加后才能导出此函数
不添加也能导出
防止名称粉碎,便于C语言程序调用动态链接库中的函数
扩大此函数的作用域