【问题标题】:return a pointer to structure taking no parameters返回指向不带参数的结构的指针
【发布时间】:2019-05-18 16:24:52
【问题描述】:

我准备我的 C 测试,发现一个问题,我需要用 C 写一个声明:

val 被声明为返回一个指向 struct 的指针并且不带参数。

我是这样做的,但不确定我是否正确:

struct s (* val) (void)

【问题讨论】:

  • 我认为你混淆了 val 和 bar。它是您要创建的函数指针吗?
  • 抱歉,错误已修正
  • 您已将val 定义为指向不带参数并返回struct s 的函数的指针(不是指向struct s 的指针)。

标签: c pointers structure


【解决方案1】:

如果你的目标是一个函数指针,它应该是

struct s *(* val) (void) 

如果是函数原型,应该是

struct s *val (void)

【讨论】:

    【解决方案2】:

    没有struct s * val(void);

    你的版本声明了一个返回结构的函数指针

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 1970-01-01
      • 2016-04-21
      • 1970-01-01
      相关资源
      最近更新 更多