C語言游戲必備:光標定位與顏色設(shè)置的實現(xiàn)方法
更新時間:2013年05月27日 10:01:59 作者:
本篇文章是對c語言中光標定位與顏色設(shè)置的方法進行了詳細的分析介紹,需要的朋友參考下
喜歡編寫游戲的朋友們,你們有福了,這個資料足以讓你玩轉(zhuǎn)WINDOWS和Linux下的光標定位以及顏色,enjoy it。
一、WINDOWS:
1.光標定位函數(shù):
復(fù)制代碼 代碼如下:
#include <windows.h>
#include <conio.h>
/****** 光標移到指定位置 ********************************/
void gotoxy(HANDLE hOut, int x, int y)
{
COORD pos;
pos.X = x; //橫坐標
pos.Y = y; //縱坐標
SetConsoleCursorPosition(hOut, pos);
}
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);//定義顯示器句柄變量
gotoxy(hOut,20,30); //光標定位在坐標(20,30)
2.顏色控制:
2.1函數(shù)實現(xiàn)
復(fù)制代碼 代碼如下:
/******設(shè)置文本為綠色 ********************************************/
void Set_TextColor_Green (void)
{
HANDLE Handle = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(Handle, FOREGROUND_INTENSITY | FOREGROUND_GREEN);
}
2.2 system
system("color 0D");//設(shè)置文本為粉紅色
注:1.0-15為16種顏色。
2.0D中0為背景顏色,D為字體顏色。
3.清屏
system("cls");
二、Linux:
在linux/unix的字符界面下,可以利用一些控制符來定位顯示位置、控制顏色、清屏等。
printf("\033[47;31mhello world\033[5m");
47是字背景顏色, 31是字體的顏色, hello world是字符串. 后面的\033[5m是控制碼.
顏色代碼:
QUOTE:
字背景顏色范圍: 40--49 字顏色: 30--39
40:黑 30:黑
41:紅 31:紅
42:綠 32:綠
43:黃 33:黃
44:藍 34:藍
45:紫 35:紫
46:深綠 36:深綠
47:白色 37:白色
ANSI控制碼:
QUOTE:
\033[0m 關(guān)閉所有屬性
\033[1m 設(shè)置高亮度
\03[4m 下劃線
\033[5m 閃爍
\033[7m 反顯
\033[8m 消隱
\033[30m -- \033[37m 設(shè)置前景色
\033[40m -- \033[47m 設(shè)置背景色
\033[nA 光標上移n行
\03[nB 光標下移n行
\033[nC 光標右移n行
\033[nD 光標左移n行
\033[y;xH設(shè)置光標位置
\033[2J 清屏
\033[K 清除從光標到行尾的內(nèi)容
\033[s 保存光標位置
\033[u 恢復(fù)光標位置
\033[?25l 隱藏光標
\33[?25h 顯示光標
相關(guān)文章
C++基礎(chǔ)入門教程(九):函數(shù)指針之回調(diào)
這篇文章主要介紹了C++基礎(chǔ)入門教程(九):函數(shù)指針之回調(diào),本文講解了函數(shù)的地址、聲明函數(shù)指針、歷史原因、typedef挽救復(fù)雜的函數(shù)指針等內(nèi)容,需要的朋友可以參考下2014-11-11
C語言中常見的六種動態(tài)內(nèi)存錯誤總結(jié)
學習過C語言中的動態(tài)內(nèi)存函數(shù),例如【malloc】、【calloc】、【realloc】、【free】,那它們在使用的過程中會碰到哪些問題呢,本本文我們一起來探討下,感興趣的朋友跟著小編一起來看看吧2023-11-11
C++報錯`Null Pointer Dereference`的解決方法
在軟件開發(fā)中,Null Pointer Dereference 是一種常見的錯誤,它發(fā)生在程序試圖訪問或操作一個空指針指向的內(nèi)存位置時,這種情況通常會導(dǎo)致程序崩潰,給 debug 工作帶來很大困擾,今天,我們將探討如何解決 Null Pointer Dereference 報錯,需要的朋友可以參考下2024-07-07

