我正在编写一个简单的windows控制台应用程序,它通过
链接到一堆静态库。#pragma comment(lib, "SomeLibrary.lib");
(其中包括SQLite3.lib)
当我启动程序时,main函数中的代码似乎没有被执行,而是出现了sqlite控制台应用程序的命令行提示符。很奇怪,不是吗?我能想到的唯一原因是,不知怎么的,另一个main函数在其他地方被定义(假设在静态sqlite库中),并被执行。
这可能吗?有没有办法找出是否有一个主函数定义在一个静态库?有没有办法让main函数优先于其他函数呢?
sqlite3.lib
库具有main
函数,因为您将SQLite命令行shell的源代码编译到其中。
编译没有shell.c
的库。它应该只包含sqlite3.c