从函数返回指针数组

时间:2014-05-10 20:22:20

标签: c arrays string function

我知道C不允许函数返回数组。

我正在编写一个使用提供的分隔符拆分字符串的函数。给出以下内存数据:

0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15

61 61 61 61 61 61 61 62 61 61 61 61 61 61 61 62
^                       ^
First string            Second string
starts here             starts here

目前,使用" b"的分隔符(字节62),该函数识别存储器位置0和8,并将7(分隔符位置)设置为" \ 0"。

我应该如何将这些指针位置返回给调用函数?

2 个答案:

答案 0 :(得分:1)

你可以返回一个指针数组。 (指针指针) 变量**

答案 1 :(得分:0)

如果您需要返回多个值,则有两个常规选项:

  • 提供" out"功能参数
  • 返回结构

我假设您正在将指针返回到由调用者分配的存储(例如,调用者传入的字符串)。