include <stdio.h>

include <stdlib.h>

include <string.h>

include <locale.h>

int main() {

int i,v;

char bs[33];

char b[33];

char hs[9];

char h[9];

char s[4];

char *e;

// 十进制整数转二进制串;

i=1024;

ltoa(i,b,2);

sprintf(bs,"%032s",b);

printf("i=%d,bs=%s\n",i,bs);

// 十进制整数转十六进制串;

i=1024;

ltoa(i,h,16);

sprintf(hs,"%08s",h);

printf("i=%d,hs=%s\n",i,hs);

// 十六进制字符串转成十进制数

strcpy(hs,"00000400");

sscanf(hs,"%x",&i);

printf("hs=%s,i=%d\n",hs,i);

// 二进制字符串转化为十六进制字符串;

strcpy(bs,"00000000000000000000010000000000");

i=strtol(bs,&e,2);

ltoa(i,h,16);

sprintf(hs,"%08s",h);

printf("bs=%s,hs=%s\n",bs,hs);

// 二进制字符串转化为十进制数;

strcpy(bs,"00000000000000000000010000000000");

i=strtol(bs,&e,2);

printf("bs=%s,i=%d\n",bs,i);

// 十六进制字符串转成二进制串

strcpy(hs,"00000400");

sscanf(hs,"%x",&i);

ltoa(i,b,2);

sprintf(bs,"%032s",b);

printf("hs=%s,bs=%s\n",hs,bs);

// ASC\GBK字符串转十六进制串

strcpy(s,"a汉");

i=0;

while (1) {

if (0==s[i]) break;

sprintf(hs+i2,"%02X",(unsigned char)s[i]);

i++;

}

setlocale(LC_ALL,"chs");

printf("s=%s,hs=%s\n",s,hs);

// 十六进制字符串转成汉字(GBK)及字符(ASC)

strcpy(hs,"61BABA");

i=0;

while (1) {

if (1!=sscanf(hs+i
2,"%2x",&v)) break;

s[i]=(char)v;

i++;

}

s[i]=0;

printf("hs=%s,s=%s\n",hs,s);

return 0;

}

//i=1024,bs=00000000000000000000010000000000

//i=1024,hs=00000400

//hs=00000400,i=1024

//bs=00000000000000000000010000000000,hs=00000400

//bs=00000000000000000000010000000000,i=1024

//hs=00000400,bs=00000000000000000000010000000000

//s=a汉,hs=61BABA

//hs=61BABA,s=a汉

C实现十进制与十六进制转换的更多相关文章

  1. C# 十进制和十六进制转换

    转至:http://www.cnblogs.com/fwind/archive/2012/04/13/2445380.html 在C#中,十进制和十六进制转换非常简单,方法如下: 十进制转为十六进制: ...

  2. Python 二进制,十进制,十六进制转换

    十六进制 到 十进制 使用 int() 函数 ,第一个参数是字符串 '0Xff' ,第二个参数是说明,这个字符串是几进制的数.  转化的结果是一个十进制数. >>> int('0xf ...

  3. Java 二进制,八进制,十进制,十六进制转换

    A.十进制转换其他 十进制转成二进制  Integer.toBinaryString(int i) 十进制转成八进制  Integer.toOctalString(int i) 十进制转成十六进制:  ...

  4. C# 十进制与十六进制互转

    1.从十六进制转换为十进制 /// <summary> /// 十六进制转换到十进制 /// </summary> /// <param name="hex&q ...

  5. delphi 十进制十六进制转换

    delphi有提供十进制转换成十六进制的函数: IntToStr();   返回值为String // 十进制转十六进制 var i: integer; str: string; begin i := ...

  6. PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明

    PHP函数篇详解十进制.二进制.八进制和十六进制转换函数说明 作者: 字体:[增加 减小] 类型:转载   中文字符编码研究系列第一期,PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明 ...

  7. ORACLE十进制与十六进制的转换

    十进制与十六进制的转换 十进制-->十六进制 select to_char(100,'XX') from dual; 十六进制-->十进制select to_number('7D','XX ...

  8. PHP函数十进制、二进制、八进制和十六进制转换

    PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明,主要掌握各进制转换的方法,以应用于实际开发. 一,十进制(decimal system)转换函数说明 1,十进制转二进制 decbin ...

  9. Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换

    public class DigitalTrans { /** * 数字字符串转ASCII码字符串 * * @param String * 字符串 * @return ASCII字符串 */ publ ...

随机推荐

  1. 基于Hi3559AV100的视频采集(VDEC-VPSS-VO)整体框图设计

    下面给出基于Hi3559AV100的视频采集整体设计,具体设计将在后续给出: 图形采集端整体设计 Hi3559AV100软件程序按结构划分可分为4层,第一层是硬件驱动层,第二层是操作系统层,第三层是媒 ...

  2. C++共享数据保护机制

    下面随笔说明C++共享数据保护机制. 共享数据的保护 对于既需要共享.又需要防止改变的数据应该声明为常类型(用const进行修饰). 对于不改变对象状态的成员函数应该声明为常函数. (1)常类型 ①常 ...

  3. POJ-1182(经典带权并查集)

    食物链 POJ-1182 一个很好的分析博客:https://blog.csdn.net/niushuai666/article/details/6981689 三种关系:两者同类,吃父节点,被父节点 ...

  4. Git 常用命令 和 安装

    这年头不会点git还真不能与别人进行代码交流 安装 windowns版下载:https://git-scm.com/download/win ,下载完成后就自己手动安装 ,很简单就不多说. Ubunt ...

  5. 浅谈Java的反射的原理

    Java的编译过程 谈及反射,不得不先了解一下,java的整个编译过程,整体的java编译过程可以参考 之前的一篇 一个java文件被执行的历程 这里我们只针对 对象这一层级来讨论,一个java文件, ...

  6. Redis 通过 RDB 方式进行数据备份与还原

    Redis 通过 RDB 方式进行数据备份与还原 Intro 有的时候我们需要对 Redis 的数据进行迁移,今天介绍一下通过 RDB(快照)文件进行 Redis 数据的备份和还原 Redis 持久化 ...

  7. Codeforces Round #558 B2. Cat Party (Hard Edition)

    题面: 传送门 题目描述: 题意:确定最大的x,使去除掉前x天的其中一天后,所有不同数字的数量相等.   题目分析: 可能是我太久没打cf了,水题都做不出来. 这道题的关键在于:要记录相同数量,的不同 ...

  8. BZOJ_1503 [NOI2004]郁闷的出纳员 【Splay树】

    一 题面 [NOI2004]郁闷的出纳员 二 分析 模板题. 对于全部员工的涨工资和跌工资,可以设一个变量存储起来,然后在进行删除时,利用伸展树能把结点旋转到根的特性,能够很方便的删除那些不符合值的点 ...

  9. Qt3D使用assimp加载常规模型文件

    Qt3D使用assimp加载三维模型文件,assimp支持很多常规格式的三维模型格式: 其中支持导入的格式有: 3D 3DS 3MF AC AC3D ACC AMJ ASE ASK B3D BLEND ...

  10. ch1_6_2求解删除公共字符问题

    输入两个字符串,从第一字符串中删除第二个字符串中所有的字符.例如,输入"They are students."和"aeiou",则删除之后的第一个字符串变成&q ...