win32强化练习1.1_MessageBox简单应用及手动编译

MessageBox函数

MessageBox一般都会是在学习WIN32程序设计时最先接触的API函数,使用它的前置条件很少:

1. 需要包含头文件 #include <windows.h>,就可以了;

2. 我们可以在C/C++的控制台程序中调用它,然后再进入WinMain函数的学习。


初次接触这个函数,我们只需要记住3个0和一条需要显示的文本即可:

#include <windows.h>
int main(int argc, char *argv[])
{
	MessageBox(0,"hello world",0,0); //只需要记住3个0和一条需要显示的文本
	return 0;
}

而MessageBox是有返回值的,具体可以去百度或MSDN上去查一下这个函数,然后我们就利用返回值制作一个简单的选择题:

#include <windows.h>
int main(int argc, char *argv[])
{
	int ret = MessageBox(0,"hello world",0,1);
	if (ret == IDOK)
		MessageBox(0,"Yes",0,0);
	else 
		MessageBox(0,"No",0,0);
	return 0;
}


进一步,我们希望在出现窗口时播放声音:

#include <windows.h>

int WINAPI WinMain(	HINSTANCE hInst, 
					HINSTANCE hPre, 
					LPSTR cmdLine, 
					int nCmdshow)
{
        mciSendString("play D:/b1.mp3","",0,NULL);
	MessageBox(0, "hello world!","aa",0);
	return 0;
}
好了,问题来了:我们无法完成“编译+链接”这个过程。

手动编译连接

由上面的问题,我们来看看手动编译!

如果使用MinGW(GCC)编译器:

1. 要先把Mingw环境设置好(如果在cmd中直接打gcc显示no input就对了); 

2.在cmd中依次键入以下命令:

gcc -c main.cpp      (得到main.o)
gcc main.o -lwinmm     (连接libwinmm.a)

如果使用的VC编译器:

1. 找到VC的控制台

2. 键入以下命令:

CL main.cpp -c     (得到main.obj)
LINK main.obj user32.lib winmm.lib (连接到库)


说明一下:手动编译和连接在开始学习的时候有必要学习和练习一下,有助于理解和掌握其原理;但这样做与IDE比起来效率是降低的,不要沉迷于看起来很酷的却没有实际价值的表象中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值