如何在win32控制台上parsing“printf”而不是“_printf”的符号?

如何在win32控制台上parsing“printf”而不是“_printf”的符号?,第1张

概述如何在win32控制台上parsing“printf”而不是“_printf”的符号

testing平台是windows 32bit。

所以基本上我想汇编+链接汇编代码片段在这些命令中:

nasm -fwin32 test.s cl test.obj /link msvcrt.lib

它说 :

error LNK2001: unresolved external symbol printf

在我的代码中,我有这样的函数调用:

GCC Inline-assembly:call DWord ptr

windows x64 ABI。 deBUGging器如何显示传递给函数的参数

与x86_64 windows调用约定混淆

立即打电话与靠近

在DLL中,函数表是如何构造的?

call printf

所以我把所有这些改成了

call _printf

它的工作。

我不熟悉windows上的编程,但有没有办法解决printf的外部符号?

因为我正在做一些自动转换任务,并且用_开始转换所有的函数调用应该是非常单调乏味的…

任何人都可以给我一些帮助..? 谢谢!

使用/ SAFESEH定制SEH处理程序

如何deBUGging需要用户input的NASM汇编程序?

调整示例DLL代码时获取无效图像

GetProcAddress不会返回LoadlibraryA的实际地址

NASM ReadConsoleA或WriteConsoleA缓冲区deBUGging问题

MSVCRT与使用Visual C ++编译的所有内容一样, 使用下划线前缀导出cdecl函数。 对于你自己的库,你可以重写这个行为 ,但是由于MSVCRT不是你的库,你不能改变它。

你真的将不得不让你的程序集调用使用下划线名称。 但是,nasm有一个选项--prefix ,这使得它更容易:– --prefix _ 。 (感谢弗兰克·科特勒提到这一点。)

总结

以上是内存溢出为你收集整理的如何在win32控制台上parsing“printf”而不是“_printf”的符号?全部内容,希望文章能够帮你解决如何在win32控制台上parsing“printf”而不是“_printf”的符号?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1158044.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存