COLOR MY TEXT

This is a highly system dependent question. Using DOS, or a compiler with the textcolor function, you can use something like this:

 

#include <stdio.h>

#include <conio.h>

 

int main ( void )

{

  textcolor ( MAGENTA );

  cprintf ( "This is a test/n" );

 

  return 0;

}

 


The different color codes are

 

0   BLACK

1   BLUE

2   GREEN

3   CYAN

4   RED

5   MAGENTA

6   BROWN

7   LIGHTGRAY

8   DARKGRAY

9   LIGHTBLUE

10  LIGHTGREEN

11  LIGHTCYAN

12  LIGHTRED

13  LIGHTMAGENTA

14  YELLOW

15  WHITE

 


On Windows systems a Win32 API approach should be preferred:

 

#include <stdio.h>

#include <windows.h>

 

int main ( void )

{

  HANDLE h = GetStdHandle ( STD_OUTPUT_HANDLE );

  WORD wOldColorAttrs;

  CONSOLE_SCREEN_BUFFER_INFO csbiInfo;

 

  /*

   * First save the current color information

   */

  GetConsoleScreenBufferInfo(h, &csbiInfo);

  wOldColorAttrs = csbiInfo.wAttributes;

 

  /*

   * Set the new color information

   */

  SetConsoleTextAttribute ( h, FOREGROUND_RED | FOREGROUND_INTENSITY );

 

  printf ( "This is a test/n" );

 

  /*

   * Restore the original colors

   */

  SetConsoleTextAttribute ( h, wOldColorAttrs);

  return 0;

}

 


The color constants are

 

FOREGROUND_BLUE

FOREGROUND_GREEN

FOREGROUND_RED

FOREGROUND_INTENSITY

 


On systems that support curses, that approach can be used as well:

 

#include <curses.h>

 

int main ( void )

{

  initscr();

 

  if ( start_color() == OK ) {

    init_pair ( 1, COLOR_RED, COLOR_BLACK );

 

    attron ( COLOR_PAIR ( 1 ) );

    addstr ( "This is a test" );

 

    getch();

  }

 

  endwin();

 

  return 0;

}

 


The color constants for curses are

 

COLOR_BLACK

COLOR_RED

COLOR_GREEN

COLOR_YELLOW

COLOR_BLUE

COLOR_MAGENTA

COLOR_CYAN

COLOR_WHITE

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值