打印

高射**打蚊子,嘿嘿

[复制链接]
1685|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
100|  楼主 | 2008-1-11 16:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
computer00| | 2008-1-11 16:08 | 只看该作者

好象没有...自己写个函数吧。

使用特权

评论回复
板凳
100|  楼主 | 2008-1-11 16:12 | 只看该作者

c51里面不是有个对字符串操作的函数吗

c51里面不是有个对字符串操作的函数吗

使用特权

评论回复
地板
dld2| | 2008-1-11 16:26 | 只看该作者

高射**打蚊子,嘿嘿

char str〔16〕;
unsigned int a;

int getlen(void)

    sprintf(str,“%d”,a);
    return(strlen(str));

使用特权

评论回复
5
computer00| | 2008-1-11 16:29 | 只看该作者

问题这个不是字符串...

自己写个函数,很简单的。不断地除以10,直到结果为0。

使用特权

评论回复
6
bagdmu| | 2008-1-11 16:38 | 只看该作者

如果为了提高实时性,可以用查表法进行比较

使用特权

评论回复
7
dld2| | 2008-1-11 16:41 | 只看该作者

楼上的方法更好

更变态。:)

使用特权

评论回复
8
alice84| | 2008-1-11 16:45 | 只看该作者

不是字符串不可以定义为字符串?

比如计算整数1245的位数时,把他看成字符串然后使用strlen()不也可以算出吗?

使用特权

评论回复
9
mohanwei| | 2008-1-11 17:16 | 只看该作者

晕,sprintf直接就返回长度了……

使用特权

评论回复
10
happystar| | 2008-1-11 18:23 | 只看该作者

re 类似这样

char text1[10]= {0,10,100,1000,10000,100000,1000000,10000000,10000000,1000000000};
int b1[10]={0,1,2,3,4,5,6,7,8};
for(k=0,y=0;k<10;k++,y++){
    if((i > text[k]) && (i<text[k+1]))return (b1[y+1]);
    if(i == text1[k])return (b1[y+1]);
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

100

19

主题

41

帖子

0

粉丝