char* str = "Hello world!\n";
void print()
{
asm("movl $13,%%edx \n\t"
"movl %0,%%ecx \n\t"
"movl $0,%%ebx \n\t"
"movl $4,%%eax \n\t"
::"r"(str):"edx","ecx","ebx");
}
其中第9行的::和:分别有什么含义,为什么要那样写。
char* str = "Hello world!\n";
void print()
{
asm("movl $13,%%edx \n\t"
"movl %0,%%ecx \n\t"
"movl $0,%%ebx \n\t"
"movl $4,%%eax \n\t"
::"r"(str):"edx","ecx","ebx");
}
其中第9行的::和:分别有什么含义,为什么要那样写。