24小时热门版块排行榜    

查看: 1455  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

wj_871215

银虫 (小有名气)

[求助] c语言动态数组

求一些turbo c动态数组的相关资料
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wj_871215

银虫 (小有名气)


dubo(金币+1): 欢迎常来程序语言版讨论 2011-07-17 22:45:37
引用回帖:
Originally posted by huweny87 at 2011-07-17 13:09:39:
Turbo C采用的是C89标准,没有包含动态数组,只能用指针实现。如果是gcc之类的,采用C99标准,则可用变量名作为尺寸声明数组,可实现动态数组的功能

不好意思,我也就是菜鸟级的初学者,了解的也不是太多。我想问问用指针实现难吗,想请您详细的指导一下。
3楼2011-07-17 22:40:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wj_871215

银虫 (小有名气)

引用回帖:
Originally posted by libralibra at 2011-07-17 23:26:44:
动态数组类似于
CODE:
int **a = new int*[5];
for (int i=0; i<5; ++i)
{
        a[i] = new int[3];
        for (int j=0; j<3; ++j)
                a[i][j] = 0;
}

这就定义了一个5*3的数组,默认全是0

那这样定义行吗,赋值为零
int ***b
b=(int***)malloc(111);
for(i=0; i<111; i++)
{
b=(int**)malloc(50);
for(j=0;j<50;j++)
{
b[j]=(int*)malloc(221);
for(k=0;k<221;k++)
{
b[j][k]=0;
}
}
}
5楼2011-07-18 10:27:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wj_871215

银虫 (小有名气)

引用回帖:
Originally posted by huweny87 at 2011-07-18 11:20:14:
用指针实现也不难,就是在需要的时候,向操作系统申请一块你需要的大小的内存,把其开始地址赋值给一个指针,这个指针应该用你需要使用的数据类型声明,接下来你就可以把这个指针当作数组用了。但我不知道能不 ...

没怎么听明白,要不请您帮我看看程序怎么样,比较简短的程序
8楼2011-07-18 14:39:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wj_871215 的主题更新
信息提示
请填处理意见