C/C++ 控制台等待指令解析

目录
  • 控制台等待指令
    • Ctrl + F5
    • C version
    • C++ version
  • 让控制台程序停下来--实现暂停功能
    • 针对Microsoft
    • 针对Linux

控制台等待指令

C/C++ 程序执行完后, 控制台一闪而过, 看不到输出的信息. 可以通过不同的方式是控制台暂停.

Ctrl + F5

只是debug用, 最终程序不需要执行完后暂停. Ctrl + F5 执行完后会自动暂停.

C version

#include <stdio.h>
int main() {
    ....
    getchar();
    return 0;
}

C++ version

使用标准输入流 cin, 可跨平台. 推荐默认使用这个.

#include <iostream>
int main() {
    ....
    std::cin.get();
    return 0;
}

Windows 平台专属, 调用命令行的 pause指令.

//only works on Windows
#include <cstdlib>
int main() {
    ....
    system("pause");
    return 0;
}

Ref

Pause Console in C++ program

让控制台程序停下来--实现暂停功能

针对Microsoft

#include   <stdlib.h> 
  • 第一种方式
system( "PAUSE "); 
  • 第二种方式
getchar();  // 这招对QT程序也有用
  • 第三种方式
Sleep();

针对Linux

  • 第一种方式
getchar();

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • C++控制台实现简单人机对弈井字棋

    本文实例为大家分享了C++实现简单人机对弈井字棋的具体代码,供大家参考,具体内容如下 main.cpp #include"TicTacToe.h" int main()  {     Game game;     game.getWinner();     return 0;      } TicTacToe.h #pragma once #include<iostream> using namespace std; #include<array> #inclu

  • C++实现扫雷小游戏(控制台)

    本文实例为大家分享了C++实现扫雷小游戏的具体代码,供大家参考,具体内容如下 1.问题描述 用c++写一个扫雷小游戏,扫雷大家都玩过吧,先任意点一个方格,没有爆炸时,会出现一个数字,这个数字是以它为中心的9个格子内所有雷的个数.一般围在一堆数字中间的有可能是雷,你在你认为是雷的那里右击,就可以把它设定为雷,然后在数字区用鼠标左右键双击,可以打开非雷区,所有雷被标记后,就赢了.今天我们写的程序需要能实现以下几个功能 (1).输入坐标打开一个格子,此格子若是雷则游戏结束,若不是则显示周围雷的个数.(

  • C++控制台版扫雷游戏

    本文实例为大家分享了C++控制台版扫雷游戏的具体代码,供大家参考,具体内容如下 先说思路,其实挺简单的. (1) 随机生成10个雷,标记到二维数组里,然后计算八个方向的雷的总数记录下来,这是预处理阶段. (2)输入要翻开的位置的坐标,如果是数字直接显示,是空白的话,这里采用bfs即宽度优先搜索解决,搜到最外层是数字(仅一层)时结束,具体详见代码. // 扫雷程序  #include <iostream> #include <string> #include <queue>

  • C++控制台实现扫雷游戏

    本文实例为大家分享了C++控制台实现扫雷游戏的具体代码,供大家参考,具体内容如下 花了一下午写出来的控制台扫雷,主要通过修改和打印数组来实现. 主要的问题点: 1.在显示地图的过程中,既要显示数字,又要显示雷和符号,所以的用string类型的二维向量,vector<vector<string.>>;中间要利用ASCII码将int型的数字转化为字符串.2.生成地图的时候,雷是随机的,我这里采用的做法是取余生成雷,举个例子,如果雷数是格子数的十分之一,那我遍历整个二维数组,在rand(

  • C/C++ 中实现让控制台暂停的方法

    目录 让控制台暂停的方法 运行结果中让控制台停住 下面针对这个问题给出以下几种解决方案 让控制台暂停的方法 在程序调试的时候,有时控制台会出现闪烁之后又消失的情况,对于控制台中出现的结果可能看不到,此时就需要有一种方法使控制台在输出之后保持暂停.目前主要有一下几种方法: #include <stdlib.h> system("pause"); 这种方法可以直接使控制台暂停,并在控制台最后一行显示(请按任意键继续. . .)的标志.此时,在键盘上敲击任意键后,程序继续执行.

  • C++实现控制台版扫雷程序

    本文实例为大家分享了C++实现控制台版扫雷程序的具体代码,供大家参考,具体内容如下 测试平台: WIN7 工具: VC6.0 , VS2008都能编译得过. 花了两天时间写的,里面涉及的算法大都是自己想的,所以可能有些BUG. #include <iostream> #include <time.h> #include <windows.h> using namespace std;   #pragma comment (linker,"/subsystem:

  • C/C++ 控制台等待指令解析

    目录 控制台等待指令 Ctrl + F5 C version C++ version 让控制台程序停下来--实现暂停功能 针对Microsoft 针对Linux 控制台等待指令 C/C++ 程序执行完后, 控制台一闪而过, 看不到输出的信息. 可以通过不同的方式是控制台暂停. Ctrl + F5 只是debug用, 最终程序不需要执行完后暂停. Ctrl + F5 执行完后会自动暂停. C version #include <stdio.h> int main() {     ....   

  • Docker执行DockerFile构建过程指令解析

    目录 DockerFile 简介 DockerFile 构建过程 DockerFile 指令解析 DockerFile 案例演示 构建一个 mycentos 镜像 DockerFile 简介 镜像的定制实际上就是定制每一层所添加的配置.文件.如果我们可以把每一层修改.安装.构建.操作的命令都写入一个脚本,用这个脚本来构建.定制镜像,那么那些无法重复的问题.镜像构建透明性的问题.体积的问题就都会解决.这个脚本就是 Dockerfile. DockerFile 是用来构建 Docker 镜像的构建文

  • C++控制台强化如何实现一定界面效果(简洁版)

    目录 TANXL_CONSOLE_LIST VERSION_1_4 TANXL_CONSOLE_LIST.H VERSION_1_4 TANXL_CONSOLE_LIST.H VERSION_1_5 TANXL_CONSOLE_LIST.H VERSION_1_5 TANXL_CONSOLE_LIST.CPP VERSION_1_5 Main.CPP(测试用) TANXL_CONSOLE_LIST.H VERSION_1_5+_Final TANXL_CONSOLE_LIST.H VERSION

  • 基于C语言指令的深入分析

    这虽然只是指令解析的一部分,但这是最核心部分.完整指令为:AT+REG[admin][2][00:0C:29:AA:0B:A7]./**************************************************************** **文件:GetParameters.c **简要描述:指令解析 **注:1.这种情况下"AT+ABC[ha12ha[1122]"--即中间少了一个], 则解析的结果为ha12ha[1122.        2.默认参数的大小不

  • 解析Java Class 文件过程

    前言: 身为一个java程序员,怎么能不了解JVM呢,倘若想学习JVM,那就又必须要了解Class文件,Class之于虚拟机,就如鱼之于水,虚拟机因为Class而有了生命.<深入理解java虚拟机>中花了一整个章节来讲解Class文件,可是看完后,一直都还是迷迷糊糊,似懂非懂.正好前段时间看见一本书很不错:<自己动手写Java虚拟机>,作者利用go语言实现了一个简单的JVM,虽然没有完整实现JVM的所有功能,但是对于一些对JVM稍感兴趣的人来说,可读性还是很高的.作者讲解的很详细,

  • Vue的双向数据绑定实现原理解析

    这篇文章主要介绍了Vue的双向数据绑定实现原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.概述 vuejs是采取数据劫持结合发布者-订阅者模式的方式实现model-->view的数据绑定,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的数据回调. 至于view-model的绑定是对表单添加了change(input)的事件 二.思路 1.实现一个数

  • Vue数据双向绑定原理实例解析

    Vue数据双向绑定原理是通过数据劫持结合发布者-订阅者模式的方式来实现的,首先是对数据进行监听,然后当监听的属性发生变化时则告诉订阅者是否要更新,若更新就会执行对应的更新函数从而更新视图 MVC模式 以往的MVC模式是单向绑定,即Model绑定到View,当我们用JavaScript代码更新Model时,View就会自动更新 MVVM模式 MVVM模式就是Model–View–ViewModel模式.它实现了View的变动,自动反映在 ViewModel,反之亦然.对于双向绑定的理解,就是用户更

  • Vue 3.0自定义指令的使用入门

    提示:在阅读本文前,建议您先阅读 Vue 3 官方文档 自定义指令 章节的内容. 一.自定义指令 1.注册全局自定义指令 const app = Vue.createApp({}) // 注册一个全局自定义指令 v-focus app.directive('focus', {   // 当被绑定的元素挂载到 DOM 中时被调用   mounted(el) {     // 聚焦元素     el.focus()   } }) 2.使用全局自定义指令 <div id="app"&g

  • Dockerfile文件编写及构建镜像命令解析

    目录 指令解析 简单的Dockerfile文件 Build命令添加dockerfile参数 构建镜像 构建容器并端口映射启动 镜像上传到远程镜像仓库 部署 指令解析 FROM # 基于什么镜像 WORKDIR # 指定工作路径,没有就创建目录 ------ COPY # 拷贝,文件地址 ADD # 拷贝,也可以是文件地址,也可以是url网络资源 ------ RUN # 运行shell语句 ------ ENTRYPOINT 1.运行容器时,执行的脚本.可以是json数据指定,也可以是shell

  • shell进度条追踪指令执行时间的场景分析

    目录 代码 使用说明 效果展示 最近一两年,我经手了不少与shell相关的工作.在这个过程中,我越发觉得shell脚本在完成具体任务的同时,应该再给用户展示一个进度条,用以提示当前阶段还需要多少时间才能完成. linux中的不少软件都有进度条,比如yum的软件安装过程,docker的镜像拉取过程.本想借鉴这些软件的进度条的实现方法,但其开发语言大都不是shell,我就只好作罢.随后,我在网上搜索shell进度条的实现方法,而找到的大都是用for或while循环在控制台上直接打印等号或箭头,并在循

随机推荐