-1 c assembly inline-assembly colon
首先,不,我不是在谈论 C++ 范围解析运算符。
我有以下语法:
asm(
"mov R0,%0\n"
"mov R1,%1\n"
"mov R3,%2\n"
"mov R4,%3\n"
"mov R5,%4\n"
::"r"(<A_VALUE>),
"r"(<A_VALUE>),
"r"(<A_VALUE>),
"r"(<A_VALUE>),
"r"(<A_VALUE>),
:"r0","r1","r2"
)
Run Code Online (Sandbox Code Playgroud)
冒号和双冒号是什么意思?我确实记得在动态创建变量名时与字符串连接有关。
万提前致谢!
该::不是运营商,它是由两个:分离器。有关更多详细信息,请参阅GCC 手册 - 扩展 ASM。
asm asm-qualifiers ( AssemblerTemplate
: OutputOperands
[ : InputOperands
[ : Clobbers ] ])
asm asm-qualifiers ( AssemblerTemplate
: OutputOperands
: InputOperands
: Clobbers
: GotoLabels)
Run Code Online (Sandbox Code Playgroud)
在您的情况下,您有一个空OutputOperands参数:
asm asm-qualifiers ( AssemblerTemplate
: OutputOperands
[ : InputOperands
[ : Clobbers ] ])
asm asm-qualifiers ( AssemblerTemplate
: OutputOperands
: InputOperands
: Clobbers
: GotoLabels)
Run Code Online (Sandbox Code Playgroud)