1.功能實(shí)現(xiàn)
1. #include <windows.h>
2.
#include <iostream>
3.
using namespace std;
4.
int main()
5.
{
6.
cout<<"Hello world!";
7.
HANDLE hout;
8.
COORD coord;
9.
coord.X=10;
10.
coord.Y=10;
11.
hout=GetStdHandle(STD_OUTPUT_HANDLE);
12.
SetConsoleCursorPosition(hout,coord);
13.
cout<<"Hello world!";
14.
return 0;
15.
}
image.png
上面代碼的功能是輸出“Hello world”,并將光標(biāo)移動(dòng)到x=10,y=10處,再次輸出“Hello world”.
X Y 可以是任意非負(fù)值。
2.原理
COORD 可以理解成一個(gè)鏈表 具體為
typedef struct COORD{
short X;
short Y;
}COORD,*PCOORD;
可以用來(lái)記錄坐標(biāo).
GetStdHandle()函數(shù)獲得標(biāo)準(zhǔn)輸入輸出的句柄(雖然我并不知道句柄是什么?_?)
參數(shù)STD_OUTPUT_HANDLE是個(gè)宏油啤,代表標(biāo)準(zhǔn)輸出赏参,可以看作顯示器滔迈。
SetConsoleCursorPosition(hout,coord);看函數(shù)名稱:設(shè)置控制臺(tái)光標(biāo)坐標(biāo),
參數(shù)就是設(shè)備句柄佳窑,坐標(biāo),那么把標(biāo)準(zhǔn)輸出的句柄傳給函數(shù)父能,就可以把光標(biāo)定位
在對(duì)應(yīng)位置了(左上角的位置是0神凑,0然后向左,向下延伸)
3.注意
1.此函數(shù)只能將光標(biāo)強(qiáng)制移動(dòng)何吝,其余完全不改變
2.點(diǎn)擊打開(kāi)鏈接 這是句柄的百度百科?_?
3.我感覺(jué)goto(x,y)跟這個(gè)有點(diǎn)像溉委,下次看看