控制台操作

#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h> //控制台输入输出文件 
using namespace std;
int main()
{
    HANDLE handle =GetStdHandle(STD_OUTPUT_HANDLE);    //获取标准输出的句柄
    HANDLE handle1 =GetStdHandle(STD_OUTPUT_HANDLE);    //获取标准输出的句柄
    COORD coord={0,0};//保存光标坐标
    COORD coord1={10,10};//保存光标坐标
    SetConsoleCursorPosition(handle,coord);
    cout<<"*";
    SetConsoleCursorPosition(handle1,coord1);
    cout<<"&";
    while(1)
    {
        
        if(kbhit())
        {
            cout<<" ";
            int key=getch();
            if(key==72||key==75||key==77||key==80)
            {
                    switch(key)
                    {
                        SetConsoleCursorPosition(handle,coord);
                        case 72: coord.Y--;break; 
                        case 75: coord.X--;break; 
                        case 77: coord.X++;break; 
                        case 80: coord.Y++;break; 
                        default: break;
                        }
                        SetConsoleCursorPosition(handle,coord);
                        
                        cout<<"*";
            }
            if(key==97||key==100||key==115||key==119)
            {
                    switch(key)
                    {
                        SetConsoleCursorPosition(handle1,coord1);
                            case 97: coord1.X--;break; 
                            case 100: coord1.X++;break; 
                            case 115: coord1.Y++;break; 
                            case 119: coord1.Y--;break;
                    
                        default: break;
                        }
                        SetConsoleCursorPosition(handle1,coord1);
                        cout<<"&";
            }

        }    
    } 
    return 0;
}

 

posted @ 2024-04-13 15:14  hanxuyao  阅读(19)  评论(0)    收藏  举报