|
|
1
11
我拿到钱了 answer 从GCC的邮件列表:
现在我只想知道
编辑
:在查看了GCC源代码之后,还不清楚代码是什么
|
|
|
2
2
也许我错过了什么,但是
应该很管用。你需要外部的“C”,所以这个名称不会基于C++命名规则来修饰。 |
|
|
3
0
诀窍是字符串-文字串联。在GCC开始尝试从代码中获取任何真正的含义之前,它将连接相邻的字符串文字,因此即使程序集字符串与程序中使用的其他字符串不同,如果您执行以下操作,也应连接它们:
既然您使用的是GCC,那么您也可以
如果您还不知道,您应该知道从内联程序集调用东西是非常棘手的。当编译器生成自己对其他函数的调用时,它包含了在调用前后设置和恢复内容的代码。不过,它不知道应该为你的电话做这些。您必须自己包含这个函数(非常棘手,可能会因为编译器升级或编译标志而中断),或者确保您的函数以这样一种方式编写,即它似乎没有更改堆栈(或堆栈上的变量)的任何寄存器或条件。 编辑这只适用于C函数名——而不是C++,因为它们被修改了。 |
|
|
4
0
如果要生成32位代码(例如-m32 gcc选项),则以下asm内联将发出直接调用:
|
|
|
octagonlord69 · 如何更改C函数中的结构变量? 8 年前 |