int main()
{
__asm__("movl $0x1,%%eax;
movl $0x0,%%ebx;
int $0x80;
":::"eax","ebx");
}
我尝试在 Linux 中模拟 exit() 的行为。但在现代 Linux 中,我发现这样做非常困难,因为在 exit() 之后会调用一些退出处理程序。所以我写了一个旧版本的exit()。也许 10 年前你可以在一些代码中找到它。我用 gcc 编译它。
gcc -o exit exit.c
它给了我这些信息。
exit.c: In function ‘main’:
exit.c:3:13: warning: missing terminating " character [enabled by default]
exit.c:3:5: error: missing terminating " character
exit.c:4:13: error: expected string literal before ‘movl’
exit.c:6:27: warning: missing terminating " character [enabled by default]
exit.c:6:13: error: missing terminating " character
我仔细检查了我的代码,我认为我的代码没有错。那是什么?