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

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

编程学习2007-06-1754840

这个写得有些早了,学习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://apull.net/html/20070617224.html

标签: 编程
分享给朋友:

相关文章

代码迷惑技术如何保护Java免遭逆向工程

代码迷惑技术如何保护Java免遭逆向工程

很少有问题比程序员遇到不访问无法利用的源代码就无法解决的漏洞更令人沮丧的了。你是否在通过一个在线开源库修补代码,或正在调用常用操作系统例行程序;你可能每周都要花时间处理不是由你编写,因而也无法访问其源代码的代码。因为Java字节码包含许多和原始代码相同的信息,所以很容易对Java类文件执行逆向工程。另外,Java程度以其“一旦编写,随处运行”特性而闻名。虽然并非Java语言的专利,但代码反编译从未在Java开发者之中得到如此公开或普遍地利用。反编译的对...

VB连接SQLServer数据库操作代码

VB连接SQLServer数据库操作代码

第一步,在ModConString模块中定义一系列变量'定义一个属性过程反映连接字符串Public Property Get conString() As Variant conString = "data source=.;initial catalog=Sims_four;user End Property'定义一个提供者反映数据库类型Public Property Get conProvide() As Variant co...

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这个...

用VB类实现文件对话框

用VB类实现文件对话框

用VB类实现文件对话框'类名:ComDlg.cls '作用:文件打开保存对话框 ' ' ' 'By:Apull '2007-5-21 'http://www.apull.net Option Explicit Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" ( _ pOpenfil...