我是初学者。我想问,对于用指针表示的二维数组,比方说定义float (*a)[5],请问,对于这样的数组,我怎么知道它有多少行多少列?(我觉得是5列),如果要写个代码,计算每行的值的总和,应该怎么写?
楼下的点醒了我,若是拓展一下,求每一列的总和呢?...- -||
请问,new float[n][5]中的n是由输入的元素的长度而决定的吗?
追答float (*a)[5] ,可以把a看成一个一维数组,它的元素是“含有5个元素的数组”
追问对了,若是随机输入的一串数字呢?怎么定义n?
嗯,我想到了,直接定义new float[][5],然后就可以了,对吗?
这么定义就是为了可以动态分配内存,n是可以动态分配的,要看你的实际应用了,跟你输入的元素多少没什么关系。你到底是想实现什么?
追问我想实现的是,给定义好的二维数组随机输入一串数字,然后求每一列和每一行的和(那串数字的长度不确定,所以我才头疼),原始的是(*a)[5],这个倒是给定的了
一维数组中还可以用strlen测试数组长度,那么二维数组,能怎么办?如果我是随机输入一串数字,这样该怎么求和?
请问,若是求列向量的和呢?因为楼下有人说,这样定义是不知道数组有几列的...