C - 函数返回二维数组

标签 c arrays function

<分区>

也许我的问题很简单,但我是 C 语言的新手。

我创建了一个函数,它从一个文件中读取一些数据,然后将它们传递给另一个函数,该函数在给定行数和列数的情况下解析它们并创建一个二维数组。

我想返回这个数组以便在它的行中执行一些操作。如何在 C 中返回二维数组

谁能给我举个例子或者我做错了什么?

问候

最佳答案

注意,在 C 中返回数组是初学者的陷阱,因为它高度依赖于存储持续时间:

  • 静态或全局:没问题,但内容将被下一次调用覆盖
  • 自动:永远不要那样做!实际返回的是一个悬挂指针,因为数组的生命在返回语句结束时结束
  • 动态(malloc-ed):很好,但调用者必须稍后释放它。

一种更惯用的方法是调用者传递一个它拥有的数组及其大小。

关于C - 函数返回二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39742103/

相关文章:

c - 减法运算不起作用

c - void * function(void * argument),如何返回函数结果?

python - 为一组去重复的点生成索引的 numpy 数组

function - Dart 访问作为对象。如何调用它们?

python - 我应该如何调用在主函数之外定义的函数?

c++ - 使用 Microchip XC16 编译器将 foo.cpp 构建为 C 代码

c - 二分搜索树内的二分搜索树

c - 在C函数中传递二维数组

java - 如何按长度对字符串进行排序

java - 使用 CompareTo 比较数组中的字符串和 double 值?