2 crazymonk CrazyMonk 于 2015.05.30 16:13 提问

line()函数如何使用才能画一根线

我在做C语言课程设计,要用line函数画个五子棋盘,可是我折腾了半天,看书上的源代码,连一根线都画不出来
我们的书好像是基于TURBO C的,好坑。
#include "stdafx.h"
#include
#define SOLID_LINE 0
#define DOTTED_LINE 1
#define CENTER_LINE 2
#define DASHED_LINE 3
#include"BIOS.h"
#include"graphics.h"
#include
#include"gotoxy.h"
#include
#include"stdlib.h"

void DrawBoard(){//画棋盘
int x1, x2;
int y1, y2;

setbkcolor(2);//设置背景颜色
setcolor(1);//设置线条颜色
setlinestyle(DOTTED_LINE, 1, 1);//设置线的风格宽度
line(1, 1, 1, 4);

}
int _tmain(int argc, _TCHAR* argv[])
{
int gdriver;
int gmode;
int errorcode;
gdriver = DETECT;
gmode = 0;
initgraph(&gdriver,&gmode,"");//初始化图形系统
void DrawBoard();
getchar();

}

3个回答

caozhy
caozhy   Ds   Rxr 2015.05.30 20:10

graphic是turbo c特有的,基于dos的库(bgi库),除了turbo c,其它环境都不支持。
如果你用vc++,那么需要用gdi库,它和bgi库代码根本不兼容,代码要重写。
如果你什么都不懂,还是推荐你下载一个turbo c来运行你的程序。

caozhy
caozhy 回复CrazyMonk: 你可以google下。
2 年多之前 回复
CrazyMonk
CrazyMonk 确实什么都不懂,大一狗,那GDI库是什么文件呢?
2 年多之前 回复
EnderSnow
EnderSnow   2015.05.30 16:30

不太了解您所用的库,我用的库里是DrawLine(double x,double y,double dx,double dy);就是起始点坐标和x,y方向位移
可以告诉我你的line()函数中的参数吗?也许你的参数传递不对,或者需要移动笔之类的操作你没有做(●'◡'●)

EnderSnow
EnderSnow 呃,好吧,事实上我也是大一狗……你可以搜一下《C语言的科学与艺术》这本书的图形库,我用的是这个
2 年多之前 回复
CrazyMonk
CrazyMonk 用的是VS2013
2 年多之前 回复
CrazyMonk
CrazyMonk void line(int x1, int y1, int x2, int y2);
2 年多之前 回复
chentravelling
chentravelling   2015.05.31 01:07

哈哈,你这个是五子连珠课设吧?我们当年大一的时候也是这个题目,还有一个打气球什么的!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!