指针 数组/函数

一:函数指针和指针函数

函数名后面跟一对圆括号(兴许括号内还有参数),将导致去计算这个函数。

仅仅一个函数名则意味着是一个指针,是一个地址,是指向这个函数的。

1指针函数 

类型名 *函数名(函数参数表列);

 

其中,后缀运算符括号“()”表示这是一个函数,其前缀运算符星号“*”表示此函数为指针型函数,其函数值为指针,即它带回来的值的类型为指针,当调用这个函数后,将得到一个“指向返回值为的指针(地址),“类型名”表示函数返回的指针指向的类型”。

 

2函数指针:

类型名 (*函数名)(函数参数表列);
指针。函数指针有两个特殊用途,不太熟练的程序员可能很少使用函数指针,但在某些场合下若借助于函数指针,则会使程序显得非常精练。

定义函数指针:void (*f)(x,y) 表示把f定义为一个指向带有(x,y)这样类型的函数指针,该函数的返回类型为void。他可以容纳地址。如果他被赋值为某个函数的地址。如 f=test_fun f表示test_fun 的地址。调用函数时 f(),和test_fun()

均可以调用这个函数。只需要明白函数的调用是 地址+括号

 

 

二:数组指针与指针数组

注意"int *pa[5]""int (*pb)[5]"的区别。 

int (* pb)[5]; 
表示定义了一个指向数组的指针pbpb指向的数组是一维的体积为5的整型数组。

char * line[5]; 
表示line是一个5个元素的数组,每个元素是一个指向字符型数据的一个指针。

另外单独一个数组名表示数组的首地址,如line表示是数组line[5],的首地址。Line[1]表示数组的第一个元素,line=&line[0],如果数组被定义为一个

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值