当前位置:首页 > 编程学习 > C++实现十进制转换为二进制

C++实现十进制转换为二进制

编程学习2007-06-1769340

这个写得有些早了,学习c++是写的。
现在看到很多帖子问这个问题,把这个贴上来供大家参考下。


/*
* FileName: bin.cpp
*
* 转换十进制为二进制
*
* Apull
*  2005-12-2
*/
       
#include <iostream>
#include <cstdlib>
using namespace std;
       
const int size = sizeof(int) * 8;
       
char* itobin(char *p, int a)
{
    int count = 0, j;
    p += (size + 1);
    *p-- = '\0';
    while(a)
    {
        j = 1 & a;
        *p-- = j + '0';
        count++;
        if  (count >= size)
            break;
        a >>= 1;
    }
    return ++p;
}
       
int main(void)
{
    int num;
    char bin[size + 1], *p;
    cout  << "转换十进制为二进制\n输入整数:\n";
    while(cin >> num)
    {
        if (!num)
            break;
        else
            p = itobin(bin, num);
       
        cout <<  "Dec: " << num << "\tBin: " << p <<  endl << endl;
    }
    system("pause");
    return 0;
}




扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://www.apull.net/html/20070617224.html

标签: 编程
分享给朋友:

相关文章

VB/VB.net 只允许运行一个实例

VB/VB.net 只允许运行一个实例

VB/VB.net  只允许运行一个实例       by:  Apull  VB中的实现方法VB如何防止程序被重复加载,也就是只允许运行一个实例,一般有2种方法。一,直接用VB提供的APP对象的PrevInstance方法。PrevInstance的返回值为True则说明已经有一个实力在运行。If App.PrevInstance Then Msgbox "已经有一个实例在运行" End if这个...

常用asp函数

常用asp函数

<% '------------------------------------- '所有功能函数名如下: ' StrLength(str) 取得字符串长度 ' CutStr(str,strlen) 字符串长度切割 ' CheckIsEmpty(tstr) 检测是否为空 ' isInteger(para) 整数检验 ' CheckName(str) 名字字符校验 ' CheckPassword(str) 密码检验 ' CheckEmail(emai...

计算机蓝屏代码的含义

计算机蓝屏代码的含义

0 0x0000 作业完成。1 0x0001 不正确的函数。2 0x0002 系统找不到指定的档案。3 0x0003 系统找不到指定的路径。4 0x0004 系统无法开启档案。5 0x0005 拒绝存取。6 0x0006 无效的代码。7 0x0007 储存体控制区块已毁。8 0x0008 储存体空间不足,无法处理这个指令。9 0x0009 储存体控制区块地址无效。10 0x000A 环境不正确。11 0x000B 尝试加载一个格式错误的程序。12 0x000C 存取码错误。1...

ASP错误提示大全

ASP错误提示大全

Microsoft VBScript 语法错误(0×800A03E9)–>内存不足Microsoft VBScript 语法错误(0×800A03EA)–>语法错误Microsoft VBScript 语法错误(0×800A03EB)–>缺少’:’Microsoft VBScript 语法错误(0×800A03ED)–>缺少’(’Mi...