| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1709 人关注过本帖
标题:请教动态一维数组的问题
取消只看楼主 加入收藏
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
结帖率:95%
收藏
已结贴  问题点数:20 回复次数:6 
请教动态一维数组的问题
程序代码:
#include <stdafx.h>
#include <stdio.h>
# include <stdlib.h>

void main()
{
    int a[]={0, 1,2,3,5, 0, 5, 0, 3,2,1, 0,0,1,2,0, 4};   

    int i=0, n=0, m;  
  
    int *b;
    b=(int*) malloc( sizeof(int) * m);
    if (b == NULL)
    {
        printf ("fail\n");
        exit(1);
    }
       

    while(i<18)
    {   

        if(a[i]!=0)
        {
            b[n]=a[i];
            n++;
        }       

        i++;
    };

    for(i=0;i<n-1;i++)
        printf("b[%d] %d\n", i, b[i]);
    printf("%d\n", m);

    free(b);
}

程序目的:统计一个数组中非0元素
问题:因为不知道非0元素的个数,所以想用动态一维数组储存。
说明:实际处理问题的比较复杂,是个大型程序。因此,虽然此处程序运行结果正确,但不知 随着程序的复杂和数组中元素的增多,m是否能开辟出相应的内存
补充:事先定义一个超大数组的做法不太赞成,因为b数组中的元素将来还要做其它运算。
搜索更多相关主题的帖子: color 
2011-05-27 20:00
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 2楼 我菜119
具体如何用啊?
万一我b数组中存了几万个元素,而且这个只是程序的一小部分呢?

非计算机专业自学新手向大家请教
2011-05-27 20:16
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 3楼 ansic
我是外行,不懂。
给下具体操作吧,我a数组中的元素是由另一个程序产生的,这里我只是为了方便描述才简化问题

非计算机专业自学新手向大家请教
2011-05-27 20:19
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 5楼 BlueGuy
麻烦您注解说明一下,我水平低,
谢谢!

非计算机专业自学新手向大家请教
2011-05-27 20:21
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 7楼 我菜119
教训的对!哈哈。我去查查

非计算机专业自学新手向大家请教
2011-05-27 20:23
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 7楼 我菜119
其实也不是我懒惰,我查了,大部分都是一大堆,不知所云。
我是外行啊,对“堆”是什么也不懂,对“内存”也只是一知半解。
所以还是不会用。
哪位简单写个代码,我去琢磨。

非计算机专业自学新手向大家请教
2011-05-27 20:33
qhxxbc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:163
专家分:174
注 册:2010-9-14
收藏
得分:0 
回复 11楼 我菜119
非常感谢!

非计算机专业自学新手向大家请教
2011-05-27 21:00
快速回复:请教动态一维数组的问题
数据加载中...
 
   



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

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