指標

int *f[ ] ; f 是一個arrary,它的元素類型是指向int的point

int (*f [ ])() ; f 是一個array,它的元素類型是function point,它所指向的函數的返回值是一個int

int *(*f [ ])() ; f 是一個array,它的元素類型是function point,它所指向的函數的返回值是一個int point

=========================================================================

typedef void (*sighandler_t)(int);

sighandler_t signal(int signum, sighandler_t handler);

 

sighandler_t是一個function point, 它所指向的函數帶一個int型參數, 返回值是void.

signal 是一個函數, 它帶兩個參數, 一個 int參數, 一個sigheadler_t類型的參數, 返回值也是sigheandler_t類型

 

把兩行合成一行,就是

void ( *signal (int signum, void (*handler) (int)) ) (int);

 

再分析複雜聲明時, 需要藉由typedef 來把複雜的聲明,分解成幾種基本形式

1.T *p; p是指向T類型的指針

2.T a[ ]; a 是由T類型的元素組成的數組, 但有一個例外, 如果a是函數的形參, 則相當於 T *a

3.T1 f(T2, T3...); f是一個函數, 參數類型是T2 T3等, 返回值的類型是T1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值