我为C测试做准备,并发现了一个需要在C中编写声明的问题:
val
被声明为返回struct指针,并且不带任何参数。
我是这样做的,但是不确定我是否正确:
struct s (* val) (void)
答案 0 :(得分:2)
如果它是您要的功能指针,则应该是
struct s *(* val) (void)
如果它是函数原型,则应为
struct s *val (void)
答案 1 :(得分:1)
否struct s * val(void);
您的版本声明了一个返回结构的函数指针