为什么我用outtextxy无法输出

-1
void setmap()
{
	char num[50];
	int days;
	int n[NUM];
	int q=0;
	double a[NUM];
	InputBox(num, 50, _T("请输入测试数:<50"));
	int b;
	settextcolor(LIGHTBLUE);
	b = atoi(num);
	int k = 0;
	while (b--)
	{
		char e[50], r[50], t[50];
		struct map* df;
		df = (map*)malloc(sizeof(map));
		InputBox(e, 50, _T("地图显示村庄个数"));
		df->all = atoi(e);
		InputBox(r, 50, _T("逃亡天数"));
		days = atoi(r);
		InputBox(t, 50, _T("监狱地点"));
		df->prison = atoi(t);
		char o[50];
		for (int i = 0; i < df->all; i++)
		{
			for (int j = 0; j < df->all; j++)
			{
				InputBox(o, 50, _T("村庄关系"));
				df->link[i][j] = atoi(o);

			}
		}
		for (int i = 0; i < df->all; i++)//计算near[]
		{
			int count = 0;
			for (int j = 0; j < df->all; j++)
			{
				if (df->link[i][j])
				{
					count++;
					n[k] = count;
			}
				}
			k++;
		}
		char numbers[100];
		int u;
		InputBox(numbers, 100, _T("显示村庄概率个数"));
		u = atoi(numbers);

		while (u--)
		{
			char end[100];
			int p;
			InputBox(end, 100, _T("显示哪几个村庄概率?"));
			p = atoi(end);
			a[q] = jisuan(p, days, df, n);
			q++;
		}
		free(df);
	}
	for (int i = 0; i < q; i++)
	{
		TCHAR s[NUM];	
		double g = a[i];
		sprintf_s(s, _T("%.8f"), g);
		settextcolor(RED);
		settextstyle(30, 20, _T("华文彩云"));
		outtextxy(300 + q * 30, 300 + q * 20, s);
	}
}


C
ava
落夏

2021-6-30

0

条件不足,无法判断。

首先,你要统一字符集,前面用的 char,后面又用 TCHAR,这本身就是问题。

项目字符集设置的什么也没说,你的问题是无法编译还是无法执行还是执行后没效果也没说清楚。

而且这是局部代码,无法执行。不能重现你的问题,就不好解答。

ava
慢羊羊

2021-6-30

技术讨论社区