汇编学习笔记1 --- C内联汇编之Hello World

本文详细介绍了C/C++开发者如何通过内联汇编实现基本操作,从输出字符串HelloWorld到正确调用库函数,包括遇到的错误及解决方法,如不正确使用dwordptr导致的调用失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于我这样写C/C++的人来说,估计学汇编的第一件事就是想试试内联汇编,以前看云风的代码那个感觉高端啊,虽然现在只会点皮毛还算是输出Hello World了,但是是依靠函数库实现的。


char* a_ = "内联汇编";


char* szStr = "Hello World!";


__asm
{
push 0
push a_
push szStr
push 0
call dword ptr [MessageBoxA]


push szStr
call dword ptr [printf]
add esp,4
}
好吧,最开始的时候还不知道要加dword ptr 所以调用库函数失败了,不知道是不是所谓的远调用,如果是自己声明的函数,只需要call 函数名 就好了,stdcall的系统函数不需要恢复地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值