|
|
怎样使程序不从main函数正常返回,而又不使用exit呢? 写了一例:
- [rick@Fedora-Core private]$ cat break_main.c
- #include <stdio.h>
- int h()
- {
- __asm__("n:");
- printf("h is calling ...\n");
- return 0;
- }
- void g()
- {
- printf("g is calling...\n");
- }
- void f()
- {
- int a;
- *(&a+2) = &g;
- printf("f is calling...\n");
- }
- int main()
- {
- printf("entering main ...\n");
- __asm__("pushl $n;");
- f();
- printf("back to main\n");
- return 0;
- }
复制代码
解释我就不写了,留给各位网友. |
|