为什么我不能这样做;
char backgroundColor='c',textColor='e';
printf("Please, enter background color: "); scanf("%c",&backgroundColor);
printf("Please, enter text color: "); scanf("%c",&textColor);
system("color "+backgroundColor+textColor);
我该如何解决这个问题?
答案 0 :(得分:2)
您无法在C中添加字符串。控制台颜色由color BF
设置,其中B
是背景颜色,F
是前景(文本)颜色,十六进制。因此color 1E
将设置蓝色背景和黄色文字。另外,scanf
需要%c
之前的空格,如此处所示,以清除newline
。
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char backgroundColor='c',textColor='e';
char sysmes[] = "color BF";
printf("Please, enter background color: ");
scanf(" %c",&backgroundColor);
printf("Please, enter text color: ");
scanf(" %c",&textColor);
sysmes[6] = backgroundColor;
sysmes[7] = textColor;
system(sysmes);
return 0;
}