c语言返回数组指针,c语言返回数组指针的函数

dfnjsfkhak 41 0

大家好,今天小编关注到一个比较意思的话题,就是关于c语言数组指针问题,于是小编就整理了3个相关介绍c语言返回数组指针的解答,让我们一起看看吧。

  1. C语言中,return语句怎么样返回一个数组?
  2. 怎么在函数里return一个数组?
  3. row函数为什么不返回数组?

C语言中return语句怎么样返回一个数组?

首先,C/C++只能返回数组的指针而不能返回整个数组。即使返回数组的指针,但如果函数中的数组是自动性质,那将是危险的。这是比较正宗的表述。

如果确实需要从函数中返回自动性质的数组的全部元素值,有没有办法呢?

c语言返回数组指针,c语言返回数组指针的函数-第1张图片-芜湖力博教育咨询公司
图片来源网络,侵删)

有。由于C/C++是允许返回结构体的,可以定义一个结构体模板,把数组作为成员安排在其中,函数中临时声明结构体变量操作其中的数组;完毕后返回结构体变量,在主调函数中用同类型的结构体变量接收就可间接实现“返回一个数组”。

举例代码如下运行结果如下:

怎么在函数里return一个数组?

首先声明一个函数,如下所述。

c语言返回数组指针,c语言返回数组指针的函数-第2张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

char* get_array();

然后写函数主体,先声明要返回的数组char tmp_array[10],给该数组赋值后,在函数最后加上如下语句。

return tmp_array;

c语言返回数组指针,c语言返回数组指针的函数-第3张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

就return了一个数组。

row函数为什么不返回数组?

ROW函数是一种Excel函数,返回单元格或单元格区域的行号。如果省略reference,则***定是对函数ROW所在单元格的引用。如果reference为一个单元格区域,并且ROW作为垂直数组输入,则ROW将以垂直数组的形式返回reference的行号。 

因为Excel中一个单元格中只能显示一个值,所以ROW函数不能返回数组。

row函数不返回数组是因为没有使用数组作为参数

row函数是一个用于返回行号的函数,可以接受单元格或单元格区域作为参数。当只有一个参数时,row函数返回该单元格所在的行号;当有多个参数时,row函数返回一个数组,其中每个元素表示相应单元格的行号。

如果想要让row函数返回一个数组,可以将包含多个单元格的区域作为参数。

到此,以上就是小编对于c语言返回数组指针的问题就介绍到这了,希望介绍关于c语言返回数组指针的3点解答对大家有用

标签: 数组 函数 返回