当前位置: 技术问答>linux和unix
十进制转换为二进制,sprintf函数怎么不好使呢,高手看看
来源: 互联网 发布时间:2016-07-30
本文导语: char c[1024]; int x=10; sprintf(c,"%b",x);//此函数将X转换成2进制字符串 最后这个打印出来的结果却是: %b.这是为什么呢? 如果sprintf(c,"%x",x);能正常打印出x的16进制. 如果sprintf(c,"%o",x);能正常打印出x的8进制...
char c[1024];
int x=10;
sprintf(c,"%b",x);//此函数将X转换成2进制字符串
最后这个打印出来的结果却是: %b.这是为什么呢?
如果sprintf(c,"%x",x);能正常打印出x的16进制.
如果sprintf(c,"%o",x);能正常打印出x的8进制.
高手请指点下问题出在哪里.
int x=10;
sprintf(c,"%b",x);//此函数将X转换成2进制字符串
最后这个打印出来的结果却是: %b.这是为什么呢?
如果sprintf(c,"%x",x);能正常打印出x的16进制.
如果sprintf(c,"%o",x);能正常打印出x的8进制.
高手请指点下问题出在哪里.
|
我在家编写并调试一个Linux的_itoa程序,可以2,4,8,16,32,64等进制转化整数。
#include
#include
#ifdef _STDIO_H
#define wLong 32
#else
#define wLong 16
#endif
char *_itoa(int val, char *buf, int d)
{
int i=0, j, n;
char tmp[wLong+1];
if(d==2)
while( i>=1; }
else
while( val ){ n=val%d; tmp[i++]=n+(n
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!