
C++中对于一个二维数组,如何获得它第一维和第二维的长度?
3个回答
2013-11-20
展开全部
#include<stdio.h>
void main()
{
int a[100][200]; int b1=sizeof(a[0]);//求得第二维占用的字节数目
int len1=b1/sizeof(int);//除以单个元素占用的字节数目,得第二维度长度。如果数组为float型,则此处改为sizeof(float),其它类推。。。 int b0=sizeof(a);//第一维度占用的字节数目
int len0=b0/b1; //第一维度长度
printf("数组第一维长度为%d;\n数组第二维长度为%d\n",len0,len1); return;
}提供一自编简短例程,供参考。对于三维、四维等高维度数组可用同样方法求取各维长度。
void main()
{
int a[100][200]; int b1=sizeof(a[0]);//求得第二维占用的字节数目
int len1=b1/sizeof(int);//除以单个元素占用的字节数目,得第二维度长度。如果数组为float型,则此处改为sizeof(float),其它类推。。。 int b0=sizeof(a);//第一维度占用的字节数目
int len0=b0/b1; //第一维度长度
printf("数组第一维长度为%d;\n数组第二维长度为%d\n",len0,len1); return;
}提供一自编简短例程,供参考。对于三维、四维等高维度数组可用同样方法求取各维长度。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-20
展开全部
做不到的,是简单数据类型。没有获得相关信息的方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-20
展开全部
上面改为cout << sizeof(d)/sizeof(d[0]) << " " << sizeof(d[0])/sizeof(int);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询