如何将用户输入颜色传递到textcolor()?

时间:2016-09-27 15:49:43

标签: c++ textcolor turbo-c++ conio

如何将用户输入颜色传递给textcolor()中的conio.h功能?

textcolor(BLUE);
cprintf("Hello");

工作正常,但

char c[20];
gets(c);
textcolor(c);
cprintf("Hello");

抛出错误。我没想到它会自己工作。所以问题是,用户如何输入要显示的文本的颜色? 由于一些愚蠢的约束,我必须在旧的turbo c ++上执行此操作,并且不能使用graphics.hdos.h等。因此,使用textcolor()本身的解决方案会很棒。

1 个答案:

答案 0 :(得分:1)

您的代码将如下所示:

char c[20];
gets(c);

if (strcmp("BLACK",c) == 0) {textcolor(BLACK);}
else if (strcmp("BLUE",c) == 0) {textcolor(BLUE);}
else if ... more colors here ...

cprintf("Hello");

请记住BLUE不是字符串,它是一个等于整数值1的宏。gets()返回一个字符串,因此返回strcmp()函数。