如何格式化成二进制数啊,"15"->"1111"

宏鑫晶科 2001-03-30 11:53:00
...全文
145 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhq2000 2001-03-31
  • 打赏
  • 举报
回复
#include<afx.h>
#include<iostream.h>

TCHAR gBinary[][5]={ "0000" , "0001" , "0010" , "0011" , "0100" , "0101" , "0110" , "0111" , "1000" , "1001" , "1010" , "1011" , "1100" , "1101" , "1110" , "1111" };

CString DecToHex(LPCTSTR lpszDec)
{
int nVal = 0;
_stscanf(lpszDec , "%d" , &nVal);
CString strHex;
strHex.Format("%X" , nVal);

return strHex;
}

CString HexToBin(LPCTSTR lpszHex)
{
CString strHex(lpszHex);
CString strBinary;
int nVal = 0;
int i = 0;

for(i=0; i<strHex.GetLength();i++)
{
_stscanf(strHex.Mid(i,1) , "%X" , &nVal);
strBinary += gBinary[nVal];
}

return strBinary;
}

void main()
{
//CString str = "255"; //decimal number 255

int nDec;
cout << endl << "Enter an decimal number: " ;
cin >> nDec;

CString strDec;

strDec.Format("%d" , nDec);

//Translate dec into hex
CString strHex = DecToHex(strDec);
//Translate hex into bin
CString strBin = HexToBin(strHex);

cout << endl << (LPCTSTR)strDec << " (dec) = " << (LPCTSTR)strHex << " (hex) = " << (LPCTSTR)strBin << " (bin)" << endl;
}
shn1970 2001-03-31
  • 打赏
  • 举报
回复
编程序!
holyfire 2001-03-31
  • 打赏
  • 举报
回复
呵呵,怎么老贴错。

#include <stdio.h>
#include <mem.h>

void IntToBin( int Value , char * bin )
{
int length = sizeof(int) * 8;
char * str = bin;
str[ length ] = 0;
unsigned Mask = 1 << ( length - 1 );
while( Mask )
{
if( Mask & (unsigned)Value )
*str = '1';
else
*str = '0';
str++;
Mask >>= 1;
}
}

void main()
{
char bin[ sizeof( int ) * 8 + 1 ];
IntToBin( 0xff00 , bin );
printf( bin );
}
holyfire 2001-03-31
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <mem.h>

void IntToBin( int Value , char * bin )
{
int length = sizeof(int) * 8;
char * str = bin;
str[ length ] = 0;
unsigned Mask = 1 << ( length - 1 );
while( Mask )
{
if( Mask & (unsigned)Value )
*str = '1';
else
*str = '0';
str++;
Mask >>= 1;
}
}

void main()
{
char bin[ sizeof( int ) + 1 ];
IntToBin( 0xff00 , bin );
printf( bin );
}
holyfire 2001-03-31
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <mem.h>

void IntToBin( int Value , char * bin )
{
int length = sizeof(int) * 8;
char * str = bin;
str[ length ] = 0;
unsigned Mask = 1 << ( length - 1 );
while( Mask )
{
if( Mask & (unsigned)Value )
*str = '1';
else
*str = '0';
str++;
Mask >>= 1;
}
}

void main()
{
char bin[ 17 ];
IntToBin( 0xff00 , bin );
printf( bin );
}
sxbyl 2001-03-31
  • 打赏
  • 举报
回复
Faint~~~~~~~

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧