| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 867 人关注过本帖
标题:一个简单的函数
只看楼主 加入收藏
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
结帖率:97.3%
收藏
已结贴  问题点数:10 回复次数:13 
一个简单的函数
程序代码:
void  change_bin (int integer, double fraction)

{
    int  *bin = (int *)calloc(N, sizeof(int));

    int  count = 0;
    int  i;

    while (integer)        //把10进制转化2进制,输入127后显示  “0111111”,应该显示”1111111“,我指针用错了么。。。
        {

            *bin++ = integer % 2;                        //还有个问题,我用debuger  中memory查看bin,什么也没有。。。存储的数据去哪了。。。
            integer /= 2;

            count++;

       }

    while (count-- != 0)
        printf ("%d ", *bin--);


}



[ 本帖最后由 admin_xyz 于 2012-9-3 23:15 编辑 ]
搜索更多相关主题的帖子: double 
2012-09-03 22:07
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
收藏
得分:0 
靠。。。问错地方了,版主方便删下帖吗?

总有人比你努力,可怕的是比你牛的人比你还努力。
2012-09-03 22:17
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:5 
我的直觉是把 while (integer / 2 != 0 || integer == 1)换成while (integer)


梅尚程荀
马谭杨奚







                                                       
2012-09-03 22:19
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
收藏
得分:0 
嘿嘿。。。已改

总有人比你努力,可怕的是比你牛的人比你还努力。
2012-09-03 22:38
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:5 
有分接,发哪都行。
2012-09-03 23:12
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
收藏
得分:0 
好歹把问题解决了嘛。。。

总有人比你努力,可怕的是比你牛的人比你还努力。
2012-09-03 23:15
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
你说 用debuger  中memory查看bin,什么也没有。是指在运行的过程中,那块内存的内容不发生改变吗?
2012-09-03 23:15
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
收藏
得分:0 
是的

总有人比你努力,可怕的是比你牛的人比你还努力。
2012-09-03 23:16
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
那不清楚,我现在手头没有 vs。
2012-09-03 23:17
admin_xyz
Rank: 2
等 级:论坛游民
帖 子:195
专家分:77
注 册:2012-6-24
收藏
得分:0 
程序代码:
void  change_bin (int integer, double fraction)

{
    int  *bin = (int *)calloc(N, sizeof(int));

    int  count = 0;
    int  i = 0;

    while (integer)        //1/2=0,1%2 = 1
        {

            *++bin = integer % 2;               //改成这样两个问题都解决了,但不知为什么。debuging...
            integer /= 2;

            count++;

       }

    while (i++ != count)
        printf ("%d ", *bin--);


}

总有人比你努力,可怕的是比你牛的人比你还努力。
2012-09-03 23:25
快速回复:一个简单的函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055110 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved