1

如何将用户输入颜色传递给textcolor()函数conio.h

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

工作正常,但是

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

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

4

1 回答 1

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()函数。

于 2016-09-29T09:39:49.397 回答