int t=GetTickCount();
while (GetTickCount()-t<10000)
{
if(cuowufankui()>0)
{
break;
}
Sleep(1000);
}
c++ DLL里怎么让循环不卡
答案:2 悬赏:0 手机版
解决时间 2021-02-10 01:41
- 提问者网友:萌卜娃娃
- 2021-02-09 11:39
最佳答案
- 五星知识达人网友:几近狂妄
- 2021-02-09 13:18
如果你使用的是VISUAL STUDIO
1、从“文件”菜单中,选择“新建”,然后选择“项目…”.
2、从“项目类型”窗格中选择“Visual C++”下的“Win32”.
3、从“模板”窗格中,选择“Win32 控制台应用程序”.
4、为项目选择一个名称,如“MathFuncsDll”,并将其输入“名称”字段.为解决方案选择一个名称,如“DynamicLibrary”,并将其输入“解决方案名称”字段.
5、按“确定”启动 Win32 应用程序向导.在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”.
6、从“Win32 应用程序向导”中的“应用程序设置”页中,选择“应用程序类型”下的“DLL”(如果可用),或者选择“控制台应用程序”(如果“DLL”不可用).某些版本的 Visual Studio 不支持使用向导创建 DLL 项目.您可以稍后对此进行更改,以将项目编译为 DLL.
7、从“Win32 应用程序向导”的“应用程序设置”页中,选择“附加选项”下的“空项目”.
1、从“文件”菜单中,选择“新建”,然后选择“项目…”.
2、从“项目类型”窗格中选择“Visual C++”下的“Win32”.
3、从“模板”窗格中,选择“Win32 控制台应用程序”.
4、为项目选择一个名称,如“MathFuncsDll”,并将其输入“名称”字段.为解决方案选择一个名称,如“DynamicLibrary”,并将其输入“解决方案名称”字段.
5、按“确定”启动 Win32 应用程序向导.在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”.
6、从“Win32 应用程序向导”中的“应用程序设置”页中,选择“应用程序类型”下的“DLL”(如果可用),或者选择“控制台应用程序”(如果“DLL”不可用).某些版本的 Visual Studio 不支持使用向导创建 DLL 项目.您可以稍后对此进行更改,以将项目编译为 DLL.
7、从“Win32 应用程序向导”的“应用程序设置”页中,选择“附加选项”下的“空项目”.
全部回答
- 1楼网友:一袍清酒付
- 2021-02-09 13:38
1.__stdcall
以“?”标识函数名的开始,后跟函数名; 函数名后面以“@@yg”标识参数表的开始,后跟参数表;
参数表以代号表示: x--void , d--char, e--unsigned char, f--short, h--int, i--unsigned int, j--long, k--unsigned long, m--float, n--double, _n--bool, .... pa--表示指针,后面的代号表明指针类型,如果相同类型的指针连续出现,以“0”代替,一个“0”代表一次重复;
参数表的第一项为该函数的返回值类型,其后依次为参数的数据类型,指针标识在其所指数据类型前;
参数表后以“@z”标识整个名字的结束,如果该函数无参数,则以“z”标识结束。 其格式为“?functionname@@yg*****@z”或“?functionname@@yg*xz”, 例如 int test1(char *var1,unsigned long)-----“?test1@@yghpadk@z” void test2() -----“?test2@@ygxxz”
2 __cdecl调用约定: 规则同上面的 _stdcall 调用约定,只是参数表的开始标识由上面的“@@yg”变为“@@ya”。
3 __fastcall调用约定: 规则同上面的_stdcall调用约定,只是参数表的开始标识由上面的“@@yg”变为“@@yi”。
vc++对函数的省缺声明是"__cedcl",将只能被c/c++调用。
这是c++编译时的函数改名规则,c++函数改名主要是为了函数重载,而在c中不存在函数重载的问题,可以看出c++编译后函数的新名字很复杂。
所以只能通过extern来声明c函数编译命名规则来调用dll中的导出函数
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯