函数返回return 结构体数组
时间: 2023-08-30 08:08:30 浏览: 98
结构体数组的初始化-C语言学习入门教程
如果你希望函数 `explode` 返回一个结构体数组,你需要进行以下更改:
1. 首先,定义一个结构体类型,用于表示拆分后的字符串数组的元素。例如:
```c
typedef struct {
char *substring;
} Substring;
```
2. 在函数 `explode` 中,将 `ret` 的类型由 `char **` 改为 `Substring *`,同时在动态分配内存时,将 `ret[j]` 的类型改为 `Substring`。
```c
Substring *ret = calloc(count, sizeof(Substring));
```
3. 在复制子串时,将子串复制到 `ret[j].substring` 中。
```c
memcpy(ret[j].substring, str + lastindex + 1, i - lastindex - 1);
```
4. 最后,将指针 `ret` 返回。
阅读全文