gpt4 book ai didi

c++ - 如何将 UCHAR 转换为二进制

转载 作者:行者123 更新时间:2023-11-28 01:05:23 26 4
gpt4 key购买 nike

我想知道如何在 C++/MFC 中将 UCHAR 数组转换为二进制字符串。

我用 Cstring 尝试了一些可能性,但它们没有用。请告诉我原因。

这是我试过的代码:

UCHAR ucdata[256];
ucdata[0] = 40;
char data[100];
StrCpy(data,(char *)ucData);
CString dataStr(data);


// original value


// convert to int
int nValue = atoi( dataStr );

// convert to binary
CString strBinary;
itoa( nValue, strBinary.GetBuffer( 50 ), 2 );
strBinary.ReleaseBuffer();

最佳答案

C++ ... MFC CString 肯定是吧 ...

在标准 C++ 中,您可以:

UCHAR ucdata[256];
ostringstream oss(ostringstream::out);
ostream_iterator<UCHAR> out(oss);

oss << setbase(2) << setw(8) << setfill('0');
copy(ucdata, ucdata + sizeof(ucdata), out);

cout << oss.str() << endl;

我不确定如何将其转换为 MFC,尽管如果 std::string 类和 MFC CString 之间存在转换器,那么您可以尝试使用那些?

关于c++ - 如何将 UCHAR 转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6453814/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com