C语言如何改变特定某一行的颜色

要VC++6.0能运行的!... 要VC++6.0能运行的! 展开
 我来答
tattackor
2015-06-09 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:888万
展开全部
  1. 可使用windows.h库里的SetConsoleTextAttribute函数。SetConsoleTextAttribute是API设置控制台窗口字体颜色和背景色的函数。广泛应用于电脑编程
    原型
    BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
    参数
    consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE);
    GetStdHandle(nStdHandle)是返回标准的输入、输出或错误的设备的句柄,也就是获得输入、输出/错误的屏幕缓冲区的句柄。

  2. 例程:

    #include <stdio.h
    #include <windows.h>
    int main(){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置当前输出为红色
        printf("这行文字是红色的!\n");
     SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE);  //设置当前输出为白色
        printf("这行文字是白色的!\n");  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE); //设置当前输出为蓝色
        printf("这行文字是蓝色的!\n");
        return 0;
    }
tjm98
2013-12-30 · TA获得超过319个赞
知道小有建树答主
回答量:249
采纳率:0%
帮助的人:141万
展开全部
#include <windows.h>
#include <stdio.h>
int main()
{
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
    if(hConsole != NULL)
    {
        SetConsoleTextAttribute(hConsole, BACKGROUND_BLUE|FOREGROUND_RED);
        printf("This is a line with BACKGROUND_BLUE and FOREGROUND_RED!\n");
        SetConsoleTextAttribute(hConsole, BACKGROUND_GREEN|FOREGROUND_BLUE);
        printf("This is a line with BACKGROUND_GREEN and FOREGROUND_BLUE!\n");
    }
    return 0;
}
追问
怎么才能把那两行字的背景改为黑色
追答
自己想
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式