이용주 님이 쓰신 글 :
: 안녕하세요.. 또 다시 이렇게 허덥한 질문을 하는군요.. (__)
: Edit에서 오른쪽 정렬을 하는 방법에 대해서 알고 싶습니다.
임프님께서 FAQ에 올리신 글이 있습니다. 무지 간단한 방법입니다.
http://www.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_faq&no=24
: 염치불구하고 한가지만더 질문하겠습니다. 빌더 함수중에 HexToBin이라는 함수가 있더군요.
: 그 함수의 사용법에 대해서 알고 싶습니다. 제가 바꿀려고 하는것은요
: char nv_string = 6A라는 것인데 이것을
: binary인 0110 1010으로 바꾸고싶습니다. 이 함수를 사용하면 가능할것 같은데 해봐도 잘 모르겠군요. 답변부탁드릴께요. 그럼 수고하십시요..~~
세가지 방법이 있겠네요.
1) VCL/CLX 를 쓰시려면
IntToHex()와 HexToBin()을 같이 쓰면 되겠네요.
주의할 것은 IntToHex()는 AnsiString을 리턴하지만,
HexToBin()은 C 식의 char 배열을 인자로 사용합니다.
2) C 식으로 하려면,
itoa() 함수를 쓰세요. 2진수에서 36진수까지 원하는 대로 변환하실 수 있습니다.
3) C++ 식으로 하려면
bitset 클래스를 쓰세요. 2진수 전용이기 때문에 itoa()보다는 빠를 겁니다.
//---------------------------------------------------------------------------
#include <iostream>
#pragma hdrstop
#include <bitset>
//---------------------------------------------------------------------------
using namespace std;
#pragma argsused
int main()
{
bitset<8> x(0x6A);
cout << x << endl // 01101010
<< x.to_ulong() << endl // 106
<< x.to_string<char, char_traits<char>, allocator<char> >() << endl; // 01101010
// string 으로 변환 할 때는 이렇게 써야 합니다. 타이핑이 좀 귀찮죠.
return 0;
}