当前位置:  技术问答>linux和unix

关于进制之间转换的算法问题,高手指点!

    来源: 互联网  发布时间:2016-05-30

    本文导语:    我想请教一下,将一个整型数字(如 124)分别转换为二进制、八进制、十六进制,有不有什么算法?高手能给下比较全的代码更好,十分感谢。    还有一个问题就是,一个浮点型的数字(如123.456),怎么只取...

  我想请教一下,将一个整型数字(如 124)分别转换为二进制、八进制、十六进制,有不有什么算法?高手能给下比较全的代码更好,十分感谢。
   还有一个问题就是,一个浮点型的数字(如123.456),怎么只取它的整数部分(123)或者小数部分(0.456),这个格式。
   补充一下,是用C语言实现。

|
转换二进制、八进制、十六进制需要算法吗?只有转换为字符串的时候需要这样的算法吧,sprintf里的%o%x什么的都解决了
第二个问题:
double d = 123.456;
int x = (int)d;
double y = d-(int)d;

|
第二个问题,我这个低手来丢下丑。。


#include "config.h"

int main()
{
float _float_number = 123.456f ;
int _get_int_value ;
float _get_float_value ; 
 _get_int_value  = (int)_float_number;
 LOG(LOG_DEBUG, "Get value   IntegerValue = %d.", _get_int_value );
 _get_float_value  = _float_number - (int)_float_number;
 LOG(LOG_DEBUG, "Get value   Float = %f.", _get_float_value );
}



|


给你举个例子
char bin[32];
while(ival>0){
 bin[n++]=ival&0x01;
 ival>>1;
}
把bin[]反过来输出就好了

浮点数取整
double floor( double arg );
就可以了,标准的C MATH

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux c字符串中不可打印字符转换成16进制
  • 整理C# 二进制,十进制,十六进制 互转
  • Python不使用print而直接输出二进制字符串
  • 二进制十六进制转换工具 Bits Tool
  • php通过pack和unpack函数实现对二进制数据封装及解析
  • 二进制/16进制编辑器 bvi
  • 请教,有关16进制字符串形成2进制字符串的问题!
  • shell编程 16进制转2进制
  • 简单问题(10进制转换成16进制)
  • 请问在shell中如何把10进制字符转换成16进制形式输出?
  • 如何给一个变量赋二进制的值,如int x = 101011;(二进制)
  • 如何将一个十进制转换为八进制呢?请各位大侠不吝赐教
  • 拜托提供一下十六进制和十进制之间数据转换的代码
  • C语言十进制转二进制代码实例
  • 关于C++中0是十进制还是八进制的问题
  • 以二进制方式打开的文件是不是一定要使用二进制的方式进行读写????
  • php实现十进制转二进制
  • short类型转为二进制,并将转换后的二进制打印出来?如何实现?
  • 怎样把十六进制转成十进制?
  • 如何把一个大的10进制数转换为16进制字符串?
  • 请问我怎么样能够将一个十进制的数组,转成十六进制的。


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3