函数指针的问题

Damn_boy 2011-09-04 09:00:20
signal函数 参数省了

void (*signal())(int);



那个signal的返回值是什么?
是一个返回值为void 参数为int的函数么?
还是一个指向返回值为void 参数为int的函数指针?

网上看了一下都说返回值是一个指针
可觉得如果返回值是一个指针的话应该这样写

void ( *(*signal()))(int);


不知道哪里理解错了
指点一下
...全文
48 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
2011-09-04
  • 打赏
  • 举报
回复
signal 是个函数:
signal()

它返回一个指针:
*signal()

这个指针指向的是个参数列表为 int 的函数:
(*signal())(int)

这个函数的返回值类型是 void:
void (*signal())(int)

这样大家满意了吧……
jackyjkchen 2011-09-04
  • 打赏
  • 举报
回复
你这个函数指针定义的是返回值位void的函数啊
2011-09-04
  • 打赏
  • 举报
回复
不是已经有指针了么……

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧