C++中如何获取终端输出的行数,C++清除终端输出特定的一行内容

C++中如何获取终端输出的行数,C++清除终端输出特定的一行内容

大家好,又见面了,我是全栈君。

单纯使用C++ 进行编程的时候,很多输出的调试信息都是直接在终端输出的,那么有的时候就会对终端输出的信息有一定的要求,那么如何进行定位终端输出的信息到底输出到了哪一行呢?如何清除特定的一行终端内容呢?

对于上面的两个问题,相信也会有很多小伙伴有同样的烦恼,那么就让我们一起来解决这个麻烦吧。

#include <iostream>
#include <Windows.h>
using namespace std;


// 回到坐标位置,坐标需要给定
void setpos(int x, int y)
{ 
   
	COORD coord;         
	coord.X = x;
	coord.Y = y;
	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);  //回到给定的坐标位置进行重新输出
}


// 获取当前标准输出流位置
void getpos(int* x, int* y)
{ 
   
	CONSOLE_SCREEN_BUFFER_INFO b;           // 包含控制台屏幕缓冲区的信息
	GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &b);    // 获取标准输出句柄
	*x = b.dwCursorPosition.X;
	*y = b.dwCursorPosition.Y;
}

int main()
{ 
   
	int x, y;
	cout << "终端输出第一行内容;" << endl;
	cout << "终端输出第二行内容;" << endl;
	cout << "终端输出第三行内容;" << endl;
	getpos(&x, &y); //记录当前终端输出的位置
	setpos(0, 2);   // 回到坐标(0,2)位置进行标准输入输出 (第三行第一个字节位置)
	cout << " ";       // 在原本存在内容的情况下,清空原本行的内容
	setpos(0, 2);  // 回到坐标(0,2)位置进行标准输入输出
	cin >> x;
	setpos(x, y); //回到记录的位置
	return 0;
}

通过上面的代码demo就能够实现终端清空某一特定行的内容的操作了,快来尝试一下。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115098.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 用docker部署jar包_docker run 参数

    用docker部署jar包_docker run 参数小小总结一、思路1、将docker容器中的指定文件夹挂载到宿主机上,更新jar包只需上传到宿主机指定路径,方便更新2、利用bash文件运行jar包,并构建该bash的镜像,代替构建直接运行jar包的镜像,利于镜像与jar包解耦。例如,app-1.0.0.jar升级到app-2.0.0.jar,只须更改bash文件的内容,而无须构建新的镜像。二、准备工作1、创建存放docker配置文件、jar包的文件夹在宿主机上,创建文件夹:/home/admin/app,用于存放bash文件和jar包。然

    2022年9月27日
    0
  • arping工具使用

    arping工具使用arping工具使用

    2022年5月2日
    37
  • Android源码学习之环境搭建(Ubuntu下载Android源码)

    Android源码学习之环境搭建(Ubuntu下载Android源码)已经有一个多月没有看Android的知识了,之前在杭州时就买了邓凡平的《深入理解Android卷I》一直没来得及研究。后来因为公司要求,要为新的项目做准备,做各种业务的KT和技术的training,虽然新技术本身的难度不大,但是业务知识很是复杂,搞的头大,到现在终于有了一些头绪。趁现在有时间来研究下Android的源码。之前没有接触过Linux系统,我的本本现在用的是Windows系统,已经用习

    2022年5月6日
    37
  • matlab如何使用random函数,random函数

    matlab如何使用random函数,random函数手机评站网今天精心准备的是《random函数》,下面是详解!random函数的用法是turbopascal中的函数,希望有具体的介绍(有程序最好)…是turbopascal中的函数,希望有具体的介绍(有程序最好)用法:1、随机生成(0,1)之间的浮点数random.random()2、随机生成100-200的整数random.randint(100,200)3、随机产生范围为10间隔为2的…

    2022年6月7日
    65
  • C#数组反转

    C#数组反转staticvoidMain(string[]arr){string[]names={“老杨1″,”老李2″,”老王3″,”老牛4″,”老虎5″,”老磁6”};for(inti=0;i<names.Length/2;i++){…

    2022年6月8日
    45
  • phantomjs入门使用

    phantomjs入门使用PhantomJS是一个命令行工具。确保您熟悉命令提示符或PowerShell(在Windows上)或终端(在macOS和Linux上)的使用。这个指令假设PhantomJS已经安装并放置在路径的某个地方(例如,Windows用户请参阅本教程)。官网:https://phantomjs.org/中文网:http://wenku.kuryun.com/docs/phantomjs/index.html一、下载地址:https://phantomjs.org/download.html选择对应操

    2022年7月14日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号