C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[60381] Re:[질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..)
장성호 [nasilso] 1226 읽음    2010-03-04 14:18
그냥 StrToInt 쓰시면 됩니다.

문자열 "FF" 를  숫자 100으로 바꾸려면

그냥 StrToInt를 쓰면 되는데..
16진수인것을 나타내기 위해서 문자열 앞에 'x' 나 '$' 등을 붙여주시면 됩니다.

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    int  val1 = StrToInt("xFF");
    int  val2 = StrToInt("$FFFF");
    int  val3 = StrToInt("0x0f");

    ShowMessage(val1);
    ShowMessage(val2);
    ShowMessage(val3);

}
//---------------------------------------------------------------------------



그럼..

땅주인 님이 쓰신 글 :
: 16진수 스트링을 decimal으로 변환하는 매크로를 작성했는데..
:
: 매크로 * 값 하면 에러 나고..
: 값 * 매크로 하면 에러가 나지 않네요.. 매크로를 수식 중간에 쓸 수 없다.. 뭐 이런 얘기는 못 들은 것 같은데..
:
:
: #define HEXTODECIMAL(x)	    (( x == "0") ?  0 :      \
: 							(( x == "1") ?  1 :      \
: 							(( x == "2") ?  2 :      \
: 							(( x == "3") ?  3 :      \
: 							(( x == "4") ?  4 :      \
: 							(( x == "5") ?  5 :      \
: 							(( x == "6") ?  6 :      \
: 							(( x == "7") ?  7 :      \
: 							(( x == "8") ?  8 :      \
: 							(( x == "9") ?  9 :      \
: 							(( x == "A") ? 10 :      \
: 							(( x == "B") ? 11 :      \
: 							(( x == "C") ? 12 :      \
: 							(( x == "D") ? 13 :      \
: 							(( x == "E") ? 14 :      \
: 							(( x == "F") ? 15 : 0 ))))))))))))))));
: ....
: 	UnicodeString HexStr = "A5";
: 	int i,j,k;
: 	UnicodeString a,b;
: 	a = HexStr.SubString(1,1).UpperCase();
: 	b = HexStr.SubString(2,1).UpperCase();
: 
: 	i = HEXTODECIMAL(a) * 16;    // Error~! but =>  i = 16 * HEXTODECIMAL(a); => Ok~!
: 	j = HEXTODECIMAL(b);
: 
: 	k = i + j;
: 

:
: [BCC32 Error] Unit2.cpp(48): E2062 Invalid indirection
:
: 코스 상 좀 깔끔하지 않은 것 같아서.. 왜 이런 것이지요?
: 그리고, Hex String을 값으로 바꾸는 깔끔한 방법은?
:
: 감사합니다.

+ -

관련 글 리스트
60379 [질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..) 땅주인 1138 2010/03/04
60383     Re:[질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..) 제리압빠. 1266 2010/03/04
60384         음.. 위에거 자리수가 좀 작아보여서..__int64를 써 봤습니다.. 제리압빠. 1411 2010/03/04
60381     Re:[질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..) 장성호 1226 2010/03/04
60380     Re:[질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..) Lyn 1129 2010/03/04
60382         Re:Re:[질문] 이상한 매크로 동작... ? (HexToDecimal 변환 시..) 땅주인 1479 2010/03/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.