VS中用C语言如何实现光标的任意移动

刚学了一学期的C语言,在用VS2013的C语言编人机对战黑白棋,想要通过键盘移动光标至棋盘中任意位置后再按enter键来实现下子,不知道光标怎么才能移动。求解答~!!!回... 刚学了一学期的C语言,在用VS2013的C语言编人机对战黑白棋,想要通过键盘移动光标至棋盘中任意位置后再按enter键来实现下子,不知道光标怎么才能移动。求解答~!!!
回答的好的再追加20分!!!!!!!!!!!!!!!!!!!!!
展开
 我来答
星月小木木
2016-01-15 · TA获得超过3.2万个赞
知道大有可为答主
回答量:2.4万
采纳率:0%
帮助的人:1亿
展开全部
  1. 函数名:gotoxy
    原型:extern void gotoxy(int x, int y);
    用法:#include <system.h>
    功能:将光标移动到指定位置说明:gotoxy(x,y)将光标移动到指定行y和列x。设置光标到文本屏幕的指定位置,其中参数x,y为文本屏幕的坐标。
    gotoxy(0,0)将光标移动到屏幕左上角


  2. 例程:

    //这个例子将在屏幕中央输出“hello world”
    #include <stdio.h>
    #include <conio.h>
    #include <system.h>
    int main(){
        clrscr();
        gotoxy(35, 12);
        cputs("Hello world");
        getch();
        return 0;
    }


不傻不笨不弱智
2015-11-20 · TA获得超过561个赞
知道小有建树答主
回答量:377
采纳率:100%
帮助的人:316万
展开全部
#include<stdio.h>
#include<conio.h>
#include<windows.h>

int wherex()
{
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO p;
GetConsoleScreenBufferInfo(hConsole, &p);
return p.dwCursorPosition.X;
}

int wherey()
{
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO p;
GetConsoleScreenBufferInfo(hConsole, &p);
return p.dwCursorPosition.Y;
}

void gotoxy(int x, int y)
{
COORD pos = {x,y};
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hOut, pos);
}

int f()
{
int c;
int x, y;
printf("上下左右移动光标 退格删除\n");
printf("按esc退出:\n");
while(1)
{
c = getch();
//printf("%d", c);
if(c == 27) break;
else if(c==8) { gotoxy(wherex()-1, wherey()); printf(" "); gotoxy(wherex()-1, wherey());}
else if(c!=224) printf("%c", c);
else
{
c += getch();
x = wherex();
y = wherey();
switch(c)
{
case 296: y--; break;
case 304: y++; break;
case 299: x--; break;
case 301: x++; break;
default: break;
}

//printf("%d %d ", x, y);
gotoxy(x, y);
}
}

}
int main()
{
f();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
性希0hS
推荐于2018-03-13 · TA获得超过455个赞
知道小有建树答主
回答量:438
采纳率:0%
帮助的人:58.1万
展开全部
gotoxy(int x,int y)顾名思义,就是让光标goto到xy坐标的位置!O(∩_∩)O~
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AM蘑菇a13
2014-01-19 · TA获得超过1616个赞
知道小有建树答主
回答量:703
采纳率:0%
帮助的人:194万
展开全部
不知道你有没有看过《WINDOUS程序设计》这本书,或者说不知道你清不清楚API这个名词,走起吧!去百度你想要的答案。
追问
百度看了好久,都没有看太明白。API完全不懂。。。求大神解答呀。
追答
API用通俗的话来讲,就是WINDOWS操作系统的接口,微软公司留给我们程序员的接口。
你学了C语言后,不知你有没有这样的疑问过,就是C语言好像运行程序只能在控制窗口上玩,也既是那黑黑的框(如下图1),只是单单的显示出一些结果什么的。

我们平时如果去安装什么软件时,是不是都是这个的窗口?下图2

怎样能才开始像安装软件时那样的窗口,就是调API。
而你现在要学人机对战黑白棋就要调动API。(不知图片有没有上传的了)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式