컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post [HTML-CSS] 테이블 td 태그의 바탕색 한꺼번에 변경/ 테두리 색 지정 / 테두리 ...[배치파일:도스/윈도우] echo 명령 사용법 / echo (에코) 란?[포토샵 강좌] 사진 합성: 레이어를 이용하여 사진 2장을 하나로윈도우에서 배치파일(Batch File) 실행하기 [컴퓨터 초보자를 위한 강좌]구글의 새로운 방문객 카운터 서비스인 Measure Map 에 초대장 신청가입형 블로그(이글루스 등)에서도, 구글통계(Google Analytics)를 쓸 수 있나...블로그 방문객 카운터로 좋은 서비스는? 구글 통계(Google Analytics)가 방문객...세리프(Serif) 폰트와 산세리프(Sans-serif) 폰트의 차이점; 세리프(Serif)란?[VBS-VBScript] 'Exec 메서드'로, 외부 배치파일(.bat / Batch F...[QnA] 스페인어/프랑스어/독어 폰트는 어디에 있나요?

[C언어/C++] 비주얼C로 콘솔 글자 색깔 변경, 볼랜드C++의 textcolor() 함수 구현

Tuesday, June 13, 2006
스폰서 링크

볼랜드C는 textcolor() 함수 등으로, 텍스트 모드의 글자들의 색을 바꿀 수 있지만, 비주얼C에는 textcolor() 함수가 없습니다. 그렇지만 여기서 소개하는 방법으로 색을 변경할 수 있습니다:

(Windows.h 라는 헤더파일이 필요합니다. 비주얼 스튜디오가 설치되어 있다면 Windows.h 도 있겠지만, "Visual C++ 2003 의 무료 버전" 을 설치하면 그 안에 Windows.h 가 없는데, Platform SDK 안에 Windows.h 가 들어 있습니다. Platform SDK 도 무료로 다운이 가능합니다.)

결과:
비주얼C로 텍스트 모드의 글자 색상 변경



코드: 아래의 코드를 0.cpp 등의 이름으로 저장하여 컴파일하면 위의 그림과 같이 글자의 색깔이 바뀝니다.
#include <stdio.h>
#include <Windows.h>

int main() {

  // 밝은 청색
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_BLUE | FOREGROUND_INTENSITY);
  puts("Light Blue");

  // 밝은 녹색
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_INTENSITY);
  puts("Light Green");

  // 밝은 시안
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
  puts("Light Aqua (Cyan)");

  // 밝은 적색
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_INTENSITY);
  puts("Light Red");

  // 밝은 마젠타
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
  puts("Light Purple (Magenta)");

  // 밝은 황색
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);
  puts("Light Yellow");

  // 밝은 백색
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
  puts("Bright White");

  // 원래의 회색 글자로
  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
  puts("Gray (System Default)");

  return 0;
}




참고로, 볼랜드C의 경우 textcolor() 는, conio.h 헤더파일에 정의되어 있습니다. textcolor()로 색을 지정하고 cprintf()로 글자를 출력해야만 색이 바뀝니다. 그냥 printf() 로는 안될 겁니다.





여기서 소개한 코드를 실용적인 유틸리티로 만든 것이 여기에 있습니다: [C언어] COLOR 명령 확장: 명령프롬프트 글자색 변경 유틸리티 setclr.exe 만들기



더 읽기: C/C++

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top