出自:http://blog.ednchina.com/lijin305/62382/message.aspx
--------------------------------------------------------------------------------
#include < windows.h >
void clrscr(void);
void clreol(void);
void clreoscr(void);
void gotoxy(int ,int );
// --- Funktionsimplementierung
/*********************************************************************************/
void clrscr(void) //clearscreen: gesamten Bildschirm leeren
{
CONSOLE_SCREEN_BUFFER_INFO csbiInfo; //variablendklaration
HANDLE hConsoleOut;
COORD Home = {0,0};
DWORD dummy;
hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);
FillConsoleOutputCharacter(hConsoleOut,' ',csbiInfo.dwSize.X * csbiInfo.dwSize.Y,Home,&dummy); //bis cursorposition leerzeichen ausgeben
csbiInfo.dwCursorPosition.X = 0; //cursorposition X koordinate festlegen
csbiInfo.dwCursorPosition.Y = 0; //cursorposition Y koordinate festlegen
SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition); //den cursor an die festgelegte koordinate setzen
}
/*********************************************************************************/
void clreol(void) //clear end of line: den rest der Zeile nach dem cursor l鰏chen
{
CONSOLE_SCREEN_BUFFER_INFO csbiInfo; //variablendklaration
HANDLE hConsoleOut;
COORD Home,pos;
DWORD dummy;
hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);
Home = csbiInfo.dwCursorPosition;
pos.X = 80 - csbiInfo.dwCursorPosition.X;
FillConsoleOutputCharacter(hConsoleOut,' ',pos.X,Home,&dummy);
}
/*********************************************************************************/
void clreoscr(void) //clear end of screen: alles nach dem cursor l鰏chen
{
CONSOLE_SCREEN_BUFFER_INFO csbiInfo; //variablendklaration
HANDLE hConsoleOut;
COORD Home;
DWORD dummy;
hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);
Home=csbiInfo.dwCursorPosition;
FillConsoleOutputCharacter(hConsoleOut,' ',csbiInfo.dwSize.X * csbiInfo.dwSize.Y,Home,&dummy);
}
/*********************************************************************************/
void gotoxy(int x,int y) //cursor an gewuenschte position auf dem bildschirm setzen
{
CONSOLE_SCREEN_BUFFER_INFO csbiInfo; //variablendklaration
HANDLE hConsoleOut;
hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);
csbiInfo.dwCursorPosition.X = x; //cursorposition X koordinate festlegen
csbiInfo.dwCursorPosition.Y = y; //cursorposition Y koordinate festlegen
SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition); //den cursor an die festgelegte koordinate setzen
}
void textcolor(int color)
{
switch (color)
{
case 0: // White on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_RED |
FOREGROUND_GREEN | FOREGROUND_BLUE);
break;
case 1: // Red on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_RED);
break;
case 2: // Green on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_GREEN);
break;
case 3: // Yellow on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_RED |
FOREGROUND_GREEN);
break;
case 4: // Blue on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_BLUE);
break;
case 5: // Magenta on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_RED |
FOREGROUND_BLUE);
break;
case 6: // Cyan on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_GREEN |
FOREGROUND_BLUE);
break;
case 7: // Black on Gray
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | BACKGROUND_INTENSITY);
break;
case 8: // Black on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE);
break;
case 9: // Red on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE |
FOREGROUND_RED);
break;
case 10: // Green on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_GREEN);
break;
case 11: // Yellow on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_RED |
FOREGROUND_GREEN);
break;
case 12: // Blue on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_BLUE);
break;
case 13: // Magenta on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_RED |
FOREGROUND_BLUE);
break;
case 14: // Cyan on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_GREEN |
FOREGROUND_BLUE);
break;
case 15: // White on White
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_INTENSITY | FOREGROUND_INTENSITY |
BACKGROUND_RED | BACKGROUND_GREEN |
BACKGROUND_BLUE | FOREGROUND_RED |
FOREGROUND_GREEN | FOREGROUND_BLUE);
break;
default : // White on Black
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_INTENSITY | FOREGROUND_RED |
FOREGROUND_GREEN | FOREGROUND_BLUE);
break;
}
}
相关推荐
c++游戏小技巧3:Sleep(停顿) 与 gotoxy(0,0) (无闪清屏)
2D游戏必备技巧
Visual C++中使用gotoxy() / clrscr()等函数
Visual C++中使用gotoxy() / clrscr()等函数 //VisualC++中使用gotoxy()/clrscr()等函数#include<windows.h>voidclrscr(void);voidclreol(void);voidclreoscr(void);voidgotoxy(int,int);voidclrscr(void){CONSOLE_SC...
Turbo C++ 3.0:用DOSBox复刻经典C/C++开发环境
编译器是连接源代码与可执行程序的桥梁,理解编译与链接原理是程序员进阶的必经之路。在DOS时代,Turbo C++ 3.0凭借轻量集成环境和完整的C/C++支持,成为一代人的编程启蒙工具。它采用16位实模式与分段内存模型,通过近远指针和丰富的内存模型选项,让开发者深入理解底层硬件寻址逻辑。如今通过DOSBox模拟器,我们仍能在现代操作系统上完整复刻这一经典开发环境,体验从编辑、编译到调试的全流程操作。对于想夯实C语言基础、探索真实编译过程,或重温老牌IDE工程实践的读者而言,Turbo C++ 3.0提供了一
【C语言】学习gotoxy() 与 clrscr() 函数
在写代码之前,我们先来了解一下gotoxy() 与 clrscr() 函数。 gotoxy() 函数 函数原型: extern void gotoxy(int x, int y) 函数用法: #include <system.h> 函数功能: 将光标移动到指定位置。 说明: gotoxy(x,y)将光标移动到指定行x和列y。设置光标到文本屏幕的指定位置,其中参数x,y为文本屏幕的坐标...
gotoxy头文件
gotoxy
WRF-CHEM 新手向实践(四):化学初始/边界场及namelist设置
这是这个系列的最后一节了,这些经验是自己作为一个半路出家的外行一步步摸索出来的,其中不免有很多理解不到位的地方,但也正是如此,我相信这是目前新手入门wrf-chem最友好的教程之一,希望能对大家有实质性的帮助。本节继续未完成的内容。在mozbc生成化学初始和边界条件之前,还需要先在wrfinput文件中开启化学部分。
clrscr()及gotoxy()函数
1、clrscr() 作用:清屏,跟 cmd 中的清屏作用一样 注意:只有在 Trubo C 中能用,需要包含头文件:conio.h 替代:system("cls"); 需要头文件:stdlib.h 实例: #include <stdio.h> #include <stdlib.h> #include <Windows.h&...
三菱FX5U运动控制(步进)
三菱FX5U脉冲定位控制,原点回归,相对定位,绝对定位,运动控制案例。
C++中的gotoxy函数
必定有用的gotoxy函数
CAN通信:EB中配置CAN驱动,配置参数解析
以S32K314芯片说明,其他芯片不同,参数配置也有差异。
DRAM 埋入式字线(Buried Wordline)技术深度解析:从二维平面到三维凹槽
埋入式字线(bWL)及其核心的埋入式沟道阵列晶体管(BCAT)架构,无疑是 DRAM 发展史上的一次关键性革命。它在约 40nm 技术节点被行业主流采纳,成功地帮助 DRAM 产业克服了传统平面晶体管的物理缩放极限。力挽狂澜的续命技术:bWL 通过引入三维沟道结构,从根本上解决了由短沟道效应和漏电流失控引发的数据保持危机,为经典的 1T1C(单晶体管 - 单电容)DRAM 单元架构延续了超过十年的生命力。协同优化的基石技术。
让visual studio也可以用TC中的clrscr()和gotoxy()
很多人用TC写的程序总会有clrscr()清屏和gotoxy()指定位置输出的功能,vs没有提供这个功能,总提示LNK2019: unresolved external symbol _gotoxy referenced in function ,L
一种基于OpenPose和DNN的跌倒检测软件系统(中文&英文)
学习并实现一种跌倒检测模型,此模型基于OpenPose实现逐帧人体姿态检测,使用DNN识别人体动作。检测方式有在线与离线两种,本文主要测试了离线模式,测试效果较好。
VC6中代替 gotoxy() 和 clrscr() 方法
在C语言中,gotoxy()是用于在屏幕上定位光标到x,y的函数,clrscr()函数的作用是清空屏幕上的内容,像cmd里的cls命令。 但是在VC6中却是不支持gotoxy()和clrscr()这两个函数的。 以下是这两个函数的替代方法: 1.替代gotoxy()方法: 定义gotoxy()函数: #include "windows.h" void gotoxy(int x,int y){ CO...
论文复现5:UMI Universal Manipulation Interface
UMI 采用手持式夹具,加上精心的界面设计,可实现便携式、低成本和信息丰富的数据收集,以进行具有挑战性的双手和动态操作演示。配备这些功能后,UMI 框架解锁了新的机器人操作功能,只需更改每个任务的训练数据,即可实现零样本可推广的动态、双手、精确和长视野行为。我们通过全面的现实世界实验展示了 UMI 的多功能性和有效性,其中通过 UMI Zeroshot 学习的策略在对不同的人类演示进行训练时可以推广到新的环境和对象。项目主页:https://umi-gripper.github.io/
基于 STM32 设计的 HC05 蓝牙音箱
本项目介绍如何使用 STM32 微控制器和 HC05 蓝牙模块设计一个简单的蓝牙音箱。该音箱可以接收来自手机或其他蓝牙设备的音频数据,并通过扬声器播放。该项目展示了如何使用 STM32 微控制器和 HC05 蓝牙模块设计一个简单的蓝牙音箱。易于实现功能实用可扩展性强如果您需要开发一个蓝牙音箱,该项目可以作为参考。
Visual C++中使用gotoxy() / clrscr()
#include void clrscr(void);void clreol(void);void clreoscr(void);void gotoxy(int ,int );// --- Funktionsimplementierung/********************************************************************************
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
VC6不支持gotoxy()和clrscr()的替代办法
在C语言中,gotoxy()是用于在屏幕上定位光标到x,y的函数,今天看一个九九乘法口诀的源码需要用到这个函数。 而clrscr()函数的作用是清空屏幕上的内容,像cmd里的cls命令。 但是在VC6中却是不支持gotoxy()和clrscr()这两个函数的。 以下是这两个函数的替代方法: 1.gotoxy(); 先用以下代码定义gotoxy()函数: #include
C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片
基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正
SAP B1中文培訓教材_SDK
公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说
C语言控制台交互编程:conio.h库核心函数与跨平台实践
在C语言编程中,控制台输入输出是基础且关键的技术环节。标准库函数如printf和scanf虽然功能强大,但在需要实时交互的场景中存在缓冲延迟的局限。conio.h库通过提供非缓冲输入和格式化输出能力,实现了对控制台底层的直接访问,其核心函数getch和kbhit能够实现无需回车确认的即时按键检测,极大提升了交互响应速度。在工程实践中,这一特性对于开发命令行工具、文本菜单系统及教学演示程序具有重要价值。然而,由于conio.h是Windows平台特有的非标准库,在跨平台开发中面临兼容性挑战。通过条件编译技术或
SIMATIC S7-1200, S7-1500 PID 控制[手册]
SIMATIC S7-1200, S7-1500 PID 控制[手册]
BC++ 3.1经典开发环境:从DOS编程到现代迁移的实战指南
集成开发环境(IDE)与编译器是软件开发的基础工具,它们将代码编辑、编译、链接和调试等功能集成于一体,极大提升了开发效率。其核心原理在于通过预处理器、编译器、汇编器和链接器的协同工作,将高级语言源代码转换为机器可执行文件。在技术价值上,经典开发环境如BC++ 3.1不仅代表了特定历史时期的高效解决方案,更深刻体现了在有限硬件资源下对性能极致的追求,其轻量级设计、直接的内存管理模型和贴近硬件的编程模式,为理解计算机底层原理提供了绝佳实践。这类环境尤其适用于嵌入式系统、工控设备以及遗留代码维护等场景,其中对**
C语言实现贪吃蛇(easyx)
C语言贪吃蛇
如何在C/C++中定义坐标函数gotoxy()并灵活运用之
一、坐标函数的定义和使用 其实C中没有这个坐标函数,所以要自己定义,而自己定义就不一定叫gotoxy(),moveto()或position()等等自己起什么名字都可以。 首先是嵌入相关头文件的指令:#include<windows.h> 然后在主函数外定义此坐标函数: void gotoxy(int x,int y) { COORD p ; p.X=x; p.Y=y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPU
C++中的gotoxy函数(重写)
本文针对C++编程语言中gotoxy函数在控制台应用的光标定位作用,深入分析其跨平台实现差异与优化策略,旨在提升文本显示精度及界面动态更新效率,解决兼容性与性能问题,为游戏、监控及教学等场景的应用提供指导,促进控制台程序开发的优化。
c++gotoxy
【代码】c++gotoxy。
4467



被折叠的 条评论
为什么被折叠?



