설명은 따로 필요없을 것같다.
그냥 밑에 소스를 보면....

void main()

{

    int    nDec = 0;

    char szHex[16];


    // 16진수를 10진수로


    sprintf(szHex, "FF");


    nDec = (int)strtol(szHex, NULL, 16);


    printf(" %s -> %d \n", szHex, nDec);


    nDec = nDec - 0xF;


    // 10진수를 16진수로


    sprintf(szHex, "%X", nDec);


    printf("%d -> %s \n", nDec, szHex);


}



실행한 결과

 FF -> 255
240 -> F0


strtol 함수를 알면 16진수를 10진수로 바꾸는 것을 한줄에 끝낼 수 있는데
저 함수를 모르면...

sprintf의 포멧에서 %X를 쓰느냐 %x를 쓰느냐에
따라서 16진수의 영문자(A~F)가 대문자로 표시되느냐
소문자로 표시되느냐가 결정되어진다.
Posted by 띠리
BLOG main image
프로그래밍 공부하면서 써가는 개인 노트 (따라서 여기에 씌여있는 소스의 신빙성을 보장 못함 -.-;;) 이 블로그 보면서 틀린 점이 있으면 꼬옥 알려주세요. by 띠리

공지사항

카테고리

분류 전체보기 (323)
Win32 SDK 초보 (27)
통신관련 (11)
MFC TIP (20)
C/C++ TIP (10)
개발기타 (10)
링크 (2)
견물생심 (24)
이것저것 (8)
용어메모 (3)
데이터베이스 (32)
비주얼 베이직 (10)
하드웨어 (3)
C# (42)
Xcode (3)
델파이 (82)
홈페이지 (5)
MindStorm (0)
낙서 (5)
스크래치 (0)
기타 (6)
아두이노 (1)
라즈베리파이 (2)
안드로이드 (6)
파이썬 (0)
WEB (2)
Total : 995,617
Today : 107 Yesterday : 316