我正在做蛇和梯子游戏。我将屏幕分为10条水平线和10条垂直线,但是发现的下一个问题是对特定的插槽进行编号。

使用outextxy()函数,我只能显示特定数字,并且尝试使用数组将不起作用:

int a[100];
for(i=0;i<100;i++)
{
    a[i]=i;
    outtextxy( x,y,a[i]);
}


此方法不起作用,因为outtextxy()显示char值。
所以或者我这样做:

char a[100];
for(i=0;i<100;i++)
{
    a[i]=i;
    outtextxy( x,y,a[i]);
}


但是后来我知道outtextxy()仅适用于字符串。

这样,我将不得不使用100个outtextxy()语句。有任何想法吗?

最佳答案

如果我正确理解了您的问题,则需要先将整数转换为字符串,然后再将其提供给outtextxy,因此您需要执行以下操作:

int a[100];
char output[MAX_OUTPUT_SIZE]; // For 0 to 99, MAX_OUTPUT_SIZE = 5 is more than enough
for(i=0;i<100;i++)
{
   a[i]=i;
   sprintf( output, "%d", i );
   outtextxy( x,y,output);
}


请注意,数组a完全是附带的,因此除非以后需要该数组,否则以下内容也将同样起作用:

char output[MAX_OUTPUT_SIZE]; // For 0 to 99, MAX_OUTPUT_SIZE = 5 is more than enough
for(i=0;i<100;i++)
{
   sprintf( output, "%d", i );
   outtextxy( x,y,output);
}

关于c++ - 蛇和梯子,编号块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12227513/

10-11 00:48