LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1175|回复: 7

程序运行时出现死循环,怎么办?

[复制链接]
发表于 2005-10-19 12:07:47 | 显示全部楼层 |阅读模式
我的程序由于疏忽,产生了一个死循环,执行时在文本模式下一直死循环,
有什么命令能够让它退出来,除了按Ctrl+Alt+Del重启之外,
最好能退到运行前目录阿!
发表于 2005-10-19 13:11:11 | 显示全部楼层
你可以参考 KILL(1)。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-19 15:09:59 | 显示全部楼层
比如假如我的程序如下:
#include <stdio.h>
int main()
{
    int c;
   while((c=getchar())!=EOF)
     putchar(c);
}
显然运行后,会不停让你输入字符然后回显,
就像死循环一样!
输入什么字符或命令,它都不认,只给你回显,
如何退出来啊?
回复 支持 反对

使用道具 举报

发表于 2005-10-19 15:11:04 | 显示全部楼层
直接起个新的会话用kill -9啊
回复 支持 反对

使用道具 举报

发表于 2005-10-19 15:26:06 | 显示全部楼层
Ctrl + C 或者 Ctrl + Z kill 掉
回复 支持 反对

使用道具 举报

发表于 2005-10-19 16:02:47 | 显示全部楼层
Post by jianwang_cs
比如假如我的程序如下:
#include <stdio.h>
int main()
{
    int c;
   while((c=getchar())!=EOF)
     putchar(c);
}
显然运行后,会不停让你输入字符然后回显,
就像死循环一样!
输入什么字符或命令,它都不认,只给你回显,
如何退出来啊?

这个也可以按 Ctrl-D 来结束。
回复 支持 反对

使用道具 举报

发表于 2005-10-21 21:17:04 | 显示全部楼层
ctrl+c
或alt+F1-6,登录后,用ps列进程id,在kill掉
回复 支持 反对

使用道具 举报

发表于 2005-10-21 21:27:02 | 显示全部楼层
Post by AMD-K6
Ctrl + C 或者 Ctrl + Z kill 掉

ctrl+z不能kill掉,只是暂停,
ctrl+z会导致terminal driver发送SIGTSTP给进程
可以打jobs看一下

ctrl+c是SIGTERM
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表