C语言中如何实现按任意键退出

例如这样一个死循环:
#include<stdio.h>
void main()
{
for(;;)
printf("HAHA\n");
}
怎样实现在运行时按任意键退出呢?

C语言中可以使用函数system()、getch()实现按键退出。

1、直接调用系统函数 system(“pause”):

system()会调用fork()产生子进程, 由子进程来调用/bin/sh-c string 来执行参数string 字符串所代表的命令, 此命令执行完后随即返回原调用的进程。

system(“pause”)可以实现冻结屏幕,便于观察程序的执行结果。

2、调用getch()函数:

此函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,需要include<conio.h>

扩展资料

一、使用getch函数设置退出

所在头文件:conio.h。

函数用途:从控制台读取一个字符,但不显示在屏幕上。

函数原型:intgetch(void);

返回值:读取的字符。

二、打开文件的操作通过标准库函数 fopen

函数 fopen 的第二个参数指定了文件的访问模式,访问模式决定了流所许可的输入和输出操作。对访问模式字符串的许可值有严格的限制。

该字符串的第一个字符只能为三种形式:r(read)、w(write)或者 a(append)。另可加字符b表示以二进制方式打开文件。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-05

直接调用系统函数 system("pause")即可:

system()会调用fork()产生子进程, 由子进程来调用/bin/sh-c string 来执行参数string 字符串所代表的命令, 此命令执行完后随即返回原调用的进程。

system("pause")可以实现冻结屏幕,便于观察程序的执行结果。

扩展资料:

C语言参考函数:

C语言isupper()函数:判断一个字符是否是大写字母

C语言isspace()函数:判断一个字符是否是空白符

C语言isprint()函数:判断一个字符是否是可打印字符

C语言islower()函数:判断一个字符是否是小写字母

C语言labs()函数:求整数的绝对值(针对long类型)

参考资料来源:百度百科-C语言函数

参考资料来源:百度百科-c语言

本回答被网友采纳
第2个回答  推荐于2017-09-09

可以通过两种方法,达到从终端读入一个键的效果,然后通过exit函数退出。

如果在主函数中调用,也可以通过调用return 语句退出。

exit函数:

所在头文件:stdlib.h。

函数用途:强制退出程序。

函数原型:void exit(int value);

参数:value,相当于在main中退出时的返回值,传递给主调进程,即调用可执行程序的进程。

具体实现如下:


一,通过getch函数。

所在头文件:conio.h。

函数用途:从控制台读取一个字符,但不显示在屏幕上。

函数原型:int getch(void);

返回值:读取的字符。

#include <conio.h>
#include <stdlib.h>
#include <stdio.h>

void exit_with_press_any_key(void)
{
    printf("press any key to exit\n");
    getch();//等待终端输入任意字符
    
    exit(0);//退出程序。
}

如果在主函数中可以这样做:

#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
int main()
{
    //要执行的功能代码。
    printf("press any key to exit\n");
    getch();//等待终端输入任意字符
    
    return 0;//退出程序。
}

二、使用系统命令pause.

在dos命令中有pause命令,功能为暂停当前程序,并根据操作系统语言,给出

    请按任意键继续. . .

或者同样含义的其它语言提示。

当检测到有任意键输入后,程序继续运行。

在C语言中可以用system函数来调用系统函数。

system

所在头文件:stdlib.h。

函数用途:调用系统命令。

函数原型:int system(const char *command);

参数:command为要执行的命令,以字符串形式。

返回值:运行命令的结果。


通过system("pause");可以达到暂停的目的。

由于pause本身有输出,所以代码中可以不用额外加提示语言。

代码如下:

#include <stdlib.h>

void exit_with_press_any_key(void)
{
    system("pause");//等待终端输入任意字符
    
    exit(0);//退出程序。
}

如果在主函数中,可以:

#include <stdlib.h>
int main()
{
    //要执行的功能代码。
    system("pause");//等待终端输入任意字符
    
    return 0;//退出程序。
}

第3个回答  推荐于2017-10-08
#include<stdio.h>
#include<conio.h>
void main(void)
{
while(!kbhit())
{
printf(”HAHA\n”);
}
getch();
}

kbhit()函数被包含在conio.h头文件里本回答被提问者采纳
第4个回答  2011-02-07
system("PAUSE"); ??
相似回答