在C中,如何知道传递的参数是列表还是指针?

问题描述 投票:0回答:1

所以我在 Codewars 上工作并且得到了

void func(const struct struct_name  *name)
跟...共事。所以我想知道,在其他一般情况下,我怎么知道它只是指向特定结构的指针还是指向结构数组的指针?

在这种特殊情况下,我迭代了给定的东西,结果发现它是一个数组

arrays c pointers struct
1个回答
0
投票

您无法从该接口判断

name
是否指向单个对象或数组的元素。对于数组,有两种广泛使用的约定:

  1. 传入
    size_t n
    (长度,大小)参数。
  2. 使用标记来指示最后一个元素。例如,字符串使用 ' '。

最后,一些数据结构在带有链表和树的节点之间使用指针,这可能是最著名的。

© www.soinside.com 2019 - 2024. All rights reserved.