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

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

编程学习2007-06-1754550

这个写得有些早了,学习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开发者之中得到如此公开或普遍地利用。反编译的对...

 C++ string类常用函数

C++ string类常用函数

string类的构造函数:string(const char *s);    //用c字符串s初始化 string(int n,char  c);     //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string  s2="hello";都是正确的写法。...

致面向对象技术初学者的一封公开信

致面向对象技术初学者的一封公开信

 致面向对象技术初学者的一封公开信 Alistair Cockburn 著(1996 年2 月),袁峰 译介绍 首先我要解释一下为什么会写这封公开信。这似乎已经成了一种习惯,但这个步骤还是需要的。过去6 年中, 我曾经无数次地在饭店、酒吧、旅店大厅等各种地方以同一种方式度过愉快而漫长的夜晚:和同样追求真理、光明和智慧的伙伴一起探讨面向对象的真谛。现在,我已经可以回答很多当年我遇到的问题。这些同样的问题也在困扰着我的一位新同事,在一家饭店里,我花了整整一个晚上和他讨...

在ASP中访问和更新Cookies集合

在ASP中访问和更新Cookies集合

  Cookies的值比ASP其他集合(例如Form和ServerVariables)的值要复杂得多。Cookie是一小块由浏览器存贮在客户端系统上的文本,且随同每次请求发往它们应用于的域中的服务器。  ASP使得应用cookie较为容易,可以从Request对象的Cookies集合中获得所有随同请求发出的cookie值,并可创建或修改cookie,通过Response对象的Cookies集合发回给用户。  Cookie包含可用两种方式构造的信息,单值cookie提供其值给代...