Dev-Cpp/Mingw32 环境介绍(4)
上文回顾:
上文《Dev-Cpp/Mingw32 环境介绍(3)》向各位介绍了有关使用GDB调试程序的简单方法。本文我们将会看看Mingw32如何来使用静态连接库。虽然本文出炉的时间的确是有些慢了点。不过我想各位应该能够理解的。
第七章 在你的程序中使用静态连接库
当然你如果要使用*.lib可以,只要将文件名直接填入就可以了。就像 winmm.lib。当然如果用绝对路径也可以。
下面我们来看看静态连接库的格式。当然,我们不是从文件格式去分析,而是从调用格式看。通常静态库的文件名为 lib*.a其中*表示的就是任何字符。而在我们调用的时候,不需要将所有的文件名都用上,只需要使用*的内容就可以了。就像调用libwinmm.a的静态库我们只需要在连接的时候加参数 -lwinmm就可以了。前面的lib和后面的.a都不需要了。如果,还不太明白。可以看看dev安装目录中的lib目录。里面有很多win32下的静态连接库。自己分析一下文件名和调用方法就会很清楚了。
最后我们实战一下静态连接库的使用。
写什么好呢?写一个控制台上的音乐播放器吧。当然只是简单的播放音乐而已,而且路径不支持中文。这里只是为了熟悉一下静态库的使用。
新建一个控制台工程,然后我们在main.c的代码中写如下代码。
//main.c
#include
#define MAX 255
int main(int argc, char *argv[])
{
if (argc == 2)
{
char filename[MAX];
strcpy(filename, "open ");
strcat(filename, argv[1]);
strcat(filename, " alias media");
mciSendString("close media",0,0,0);
mciSendString(filename,0,0,0);
mciSendString("play media",0,0,0);
system("pause");
}
else
{
printf("play.exe musicfilename");
}
return 0;
}
//main.c end
然后我们在工程属性的连接器参数中输入 -lwinmm 好了。开始编译。如果顺利,我们的程序就会编译成功。并且可以播放一些常用的音乐文件。高兴吧。
好了,这章我们就到这里用这个例子结束了。
问外音:
由于本人最近比较忙,所以原来的两章一文改成了一章一文。请原谅。下一章我们将介绍如何建立Mingw32的静态连接库。敬请期待。并且希望各位能够多提意见。因为不论是程序还是细想唯有通过不断的交流才能愈加完善。
STUDIO软件开发组
北斗星君(黄庠魁)
本文地址:http://com.8s8s.com/it/it28588.htm