http://heart4u.co.kr/tblog/292

http://wiki.kldp.org/Translations/html/Socket_Programming-KLDP/Socket_Programming-KLDP.html#select

Windows 환경에선 Winsock이 자체적으로 Asynchronous한 통신을 지원하는듯 한데,

Linux 환경에선 그런걸 찾을 수 없었다

그래서 대안을 찾은 것이 바로 Select와 FD_SET.


FD_SET은 말 그대로 File Descriptor들의 Set이다.

FD_SET을 선언 및 초기화하고,

거기에 상태가 궁금한 FD들 ( e.g. socket, stdin, file, ... ) 을 넣은 뒤

select()를 실행하면!

현재 읽기 가능한 FD, 쓰기 가능한 FD, 에러가 난 FD의 집합을 각각 얻어낼 수 있다.

확인하는 방법도 간단한데,

FD_ISSET()을 이용하면 된다.

이 얼마나 편리한가 ㅜㅜ

일단 지금은 코딩이 바쁘니

자세한건 다음에 추가.

간단히 API를 이용하면 됩니다ㅋㅋㅋ

/**********예시 코드 ( C언어 )***********/

#include <Windows.h>

#include <stdio.h>

#include <stdlib.h> /* * 콘솔의 글자와 배경 색을 변경해주는 함수. */ void setColor ( int Color ) { SetConsoleTextAttribute ( GetStdHandle ( STD_OUTPUT_HANDLE ) , Color ); } /* * 창의 크기를 변경하는 함수. */ void setConSize ( int row, int col ) { char buf[256] = {0}; sprintf ( buf, "mode con: lines=%d cols=%d", row, col ); system ( buf ); } /* * 커서의 위치를 X,Y로 옮겨주는 함수. */ void gotoXY ( int x, int y ) { COORD pos = { x, y }; SetConsoleCursorPosition ( GetStdHandle ( STD_OUTPUT_HANDLE ) , pos ); } /* * 커서를 보일지 보이지 않을지 결정하는 함수. */ void setCursorview ( char visible ) { CONSOLE_CURSOR_INFO cursor = { 1, visible }; SetConsoleCursorInfo( GetStdHandle ( STD_OUTPUT_HANDLE ) , &cursor ); }


참고 색상표 ( -1은 없는 색, 그냥 자리를 맞추기 위해 넣었습니다 )



'Computer' 카테고리의 다른 글

Bubble Sort - related problems. ( writing )  (0) 2012.11.11
Select-Based nonblocking I/O processing  (0) 2012.11.04
리눅스 콘솔 색상 변경  (0) 2012.11.04
POJ 1328 - Radar Installation  (0) 2012.09.16
C언어 기초 - 배열 (ppt자료)  (0) 2012.08.04

출처 : http://onecellboy.tistory.com/221


리눅스 콘솔에 출력되는 글자색, 글자배경색 변경


글자색 변경 

\x1b[Nm   --> # N = (30 ~ 37)
 예) \x1b[31m    -->  붉은 글자색 


글자 배경색 변경

\x1b[Nm   --> # N = (40 ~ 47)
 예) \x1b[41m    -->  붉은 배경색 


해제

\x1b[0m   --> 적용된 글자/배경색이 해제된다.


테스트 해보기

1. 콘솔에서 테스트
echo -e "\x1b[31m RED TEST"

이 명령 후 콘솔의 모든 출력은 붉은 글자이다. 꼭 해제해 주기 바란다.

2. 프로그래밍 테스트
#include<stdio.h>
int main(){
    printf("\x1b[31m RED TEST");
return 0;
}



색 코드 

 30 : Color Test,   40 : Color Test
31 : Color Test,   41 : Color Test
32 : Color Test,   42 : Color Test
33 : Color Test,   43 : Color Test
34 : Color Test,   44 : Color Test
35 : Color Test,   45 : Color Test
36 : Color Test,   46 : Color Test
37 : Color Test,   47 : Color Test

'Computer' 카테고리의 다른 글

Select-Based nonblocking I/O processing  (0) 2012.11.04
Windows 콘솔 색상 변경, 커서 이동, 크기 조절  (1) 2012.11.04
POJ 1328 - Radar Installation  (0) 2012.09.16
C언어 기초 - 배열 (ppt자료)  (0) 2012.08.04
알고리즘 공부.  (0) 2012.07.28