免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: ccb
打印 上一主题 下一主题

ansi c 的数组的问题,急 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2002-03-11 18:02 |只看该作者

ansi c 的数组的问题,急

可以用链表来模拟,然后搞成一个function不就可以了嘛。
不过c中动态的东西除了链表实现起来都挺麻烦的。

论坛徽章:
0
12 [报告]
发表于 2002-03-12 09:53 |只看该作者

ansi c 的数组的问题,急

标准方法:不要告诉我二维数组的两个维都不确定哦!
     定义指向二维数组的指针 int (*ip)[12];//注意后一维必须确定,这样编译器才知道
     ip+1时指针到底移动多少个字节。
     分配时可用calloc或malloc都可以,但你必须自己计算所需字节数。

论坛徽章:
0
13 [报告]
发表于 2002-03-12 10:27 |只看该作者

ansi c 的数组的问题,急

认同光芒神剑的想法。可以考虑用链表来实现。

论坛徽章:
0
14 [报告]
发表于 2002-08-31 06:16 |只看该作者

ansi c 的数组的问题,急

[这个贴子最后由Hell在 2002/08/31 06:43am 编辑]

论坛徽章:
8
申猴
日期:2014-01-01 22:11:07白羊座
日期:2014-11-18 20:53:022015年辞旧岁徽章
日期:2015-03-03 16:54:1515-16赛季CBA联赛之四川
日期:2016-01-19 18:39:36综合交流区版块每日发帖之星
日期:2016-06-07 06:20:0015-16赛季CBA联赛之广东
日期:2016-10-30 11:34:40CU十四周年纪念徽章
日期:2016-11-13 10:06:5715-16赛季CBA联赛之同曦
日期:2022-08-28 15:58:19
15 [报告]
发表于 2002-10-09 19:51 |只看该作者

ansi c 的数组的问题,急

int **tp,i&#59;
tp=(int *)malloc(n*sizeof(int))&#59;
for(i=0&#59;i<n&#59;i++)
*(tp+i)=(int *)malloc(n*sizeof(int))&#59;
*(*(tp+i)+j)表示第i行,j列的值!

论坛徽章:
0
16 [报告]
发表于 2002-10-10 11:36 |只看该作者

ansi c 的数组的问题,急

可以两个维数都不确定

对指针进行强制类型转换就可以了

论坛徽章:
0
17 [报告]
发表于 2002-10-15 17:58 |只看该作者

ansi c 的数组的问题,急

typedef int T&#59;
void Release(T **a,size_t m)
{
size_t row&#59;
for(row=0&#59;row<m&#59;row++)
{
if(a[row]!=NULL)
{
free(a[row])&#59;
}
}
free(a)&#59;
}

T **Allocate(size_t m,size_t n)
{
T **a&#59;
size_t row&#59;
int success = 1&#59;
a = (T **)malloc(m*sizeof *a)&#59;
if(a!=NULL)
{
for(row =0&#59;row<m&#59;row ++)
{
a[row]=malloc(n * sizeof *a[row])&#59;
if(a[row]==NULL)
{
sucess=0&#59;
}
}

if(1!=sucess)
{
Release(a,m)&#59;
a=NULL&#59;
}
}
return a&#59;
}

T **array&#59;
array = Allocate(row,col)&#59;
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP