2020-08-02 笔试02 C语言测试阶段

逻辑推理:可以看出,中间的那个人可能是“诚实的家伙”或者“说谎的家伙”或者“犹豫不决的”,这里形成悖论;根据推理,

假设中间为犹豫不决的,那么左右两边因为至少有一句是真的,而左右都没说中间是“犹豫不决的”,那么假设不成立;

假设中间为诚实的家伙,那么很显然,假设不成立;

推出中间为说谎的家伙,则右边为诚实的家伙,左边是犹豫不决的;

解:

指针函数:int* fun(int x,int y);
函数指针:int (*fun)(int x,int y);
可以简单粗暴的理解为,指针函数的*是属于数据类型的,而函数指针的星号是属于函数名的。
再简单一点,可以这样辨别两者:函数名带括号的就是函数指针,否则就是指针函数。

通过括号,可以看出后面两个是(int * (*)(int *,int*),int*)是参数,分别是函数指针 int * (*)(int *,int*) 和 int* ;

形式:typedef  返回类型(*新类型)(参数表)

功能: 定义新的类型。

typedef char (*PTRFUN)(int);   
PTRFUN pFun;   
char glFun(int a){ return;}   
void main()   
{   
    pFun = glFun;   
    (*pFun)(2);   
}   

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值