C语言难点之C中的功能指针

晓晓 118 0

搬瓦工官网(国内无法打开,需要梯子)https://bandwagonhost.com
搬瓦工官网中国镜像站https://bwh81.net(搬瓦工官方网站,放心访问)
搬瓦工官方中文网https://bwh86.net
搬瓦工官网所有方案以及库存监控页面https://bwh86.net/monitor
最新搬瓦工最大优惠力度优惠码(循环优惠6.58%):BWHNCXNVXV
搬瓦工新用户注册和图文购买教程点击查看

在C语言中,就像普通的数据指针(int *,char *等)一样,我们可以具有指向函数的指针。以下是一个简单的示例,显示了使用函数指针进行的声明和函数调用。

在上面的示例中,为什么在功能指针(例如fun_ptr)周围需要一个额外的括号? 如果删除括号,则表达式“ void(* fun_ptr)(int)”变为“ void * fun_ptr(int)”,这是一个返回空指针的函数的声明。

以下是有关函数指针的一些有趣的事实。

1.与普通指针不同,函数指针指向代码,而不是数据。通常,函数指针存储可执行代码的开头。

2.与普通指针不同,我们不使用函数指针分配取消分配内存。

3.函数名称也可以用来获取函数的地址。例如,在下面的程序中,我们在分配中删除了地址运算符'&'。我们还通过删除*更改了函数调用,该程序仍然有效。

4.像普通指针一样,我们可以有一个函数指针数组。下面第5点的示例显示了指针数组的语法。

5.可以使用功能指针代替开关盒。例如,在下面的程序中,要求用户在0和2之间进行选择以执行不同的任务。

6.像普通数据指针一样,函数指针可以作为参数传递,也可以从函数返回。 例如,考虑下面的C程序,其中wrapper()接收一个void fun()作为参数并调用传递的函数。

这一点在C语言中特别有用。在C语言中,我们可以使用函数指针来避免代码冗余。例如,简单的qsort()函数可用于以升序或降序或在结构数组的情况下以任何其他顺序对数组进行排序。不仅如此,借助函数指针和void指针,还可以将qsort用于任何数据类型

与qsort()类似,我们可以编写自己的函数,这些函数可用于任何数据类型,并且可以执行不同的任务而无需代码冗余。以下是可用于任何数据类型的示例搜索功能。实际上,我们可以使用此搜索功能通过编写自定义的比较功能来查找接近的元素(低于阈值)。

通过编写单独的自定义compare(),以上搜索功能可用于任何数据类型。

7. C ++中许多面向对象的功能都是使用C中的函数指针实现的。例如虚函数。类方法是使用函数指针实现的另一个示例。

想领取免费资料以及教程,请查看下方图片:

搬瓦工机房方案整理

搬瓦工目前提供了4个方案,包括搬瓦工KVM方案搬瓦工CN2 GT方案搬瓦工CN2 GIA-E方案搬瓦工香港方案,每种方案有多种套餐配置,详细的配置和价格整理如下:
套餐名称 CPU 内存大小 硬盘容量 每月流量 带宽 价格/年 购买链接
搬瓦工CN2-E限量版(搬瓦工补货通知群(禁言,仅推送):903230558)
CN2 GIA LIMITED EDITION 1核 1 GB 10 GB 500 GB 1 Gbps $89.99 立即购买
搬瓦工CN2 GT方案
CN2 1核 1024 MB 20 GB 1000 GB 1 Gbps $49.99 立即购买
CN2 1核 2048 MB 40 GB 2000 GB 1 Gbps $99.99 立即购买
CN2 2核 4096 MB 80 GB 3000 GB 1 Gbps $199.99 立即购买
CN2 2核 8 GB 160 GB 5000 GB 1 Gbps $399.99 立即购买
CN2 3核 16 GB 320 GB 8000 GB 1 Gbps $799.99 立即购买
CN2大流量 3核 16 GB 320 GB 12000 GB 1 Gbps $899.99 立即购买
CN2大流量 3核 16 GB 320 GB 16000 GB 1 Gbps $1299.99 立即购买
搬瓦工CN2 GIA-E方案(可选搬瓦工DC9 CN2 GIA,搬瓦工DC6 CN2 GIA,搬瓦工日本大阪软银线路)
CN2 GIA ECOMMERCE 2核 1 GB 20 GB 1000 GB 2.5 Gbps $169.99 立即购买
CN2 GIA ECOMMERCE 3核 2 GB 40 GB 2000 GB 2.5 Gbps $299.99 立即购买
CN2 GIA ECOMMERCE 4核 4 GB 80 GB 3000 GB 2.5 Gbps $549.99 立即购买
CN2 GIA ECOMMERCE 6核 8 GB 160 GB 5000 GB 5 Gbps $879.99 立即购买
CN2 GIA ECOMMERCE 8核 16 GB 320 GB 8000 GB 5 Gbps $1599.99 立即购买
CN2 GIA ECOMMERCE 10核 32 GB 640 GB 10000 GB 10 Gbps $2759.99 立即购买
CN2 GIA ECOMMERCE 12核 64 GB 1280 GB 12000 GB 10 Gbps $5399.99 立即购买
搬瓦工香港方案
香港CN2 GIA 2核 2048 MB 40 GB 500 GB 1 Gbps $899.99 立即购买
香港CN2 GIA 4核 4096 MB 80 GB 1000 GB 1 Gbps $1559.99 立即购买
香港CN2 GIA 6核 8192 MB 160 GB 2000 GB 1 Gbps $2999.99 立即购买
香港CN2 GIA 6核 16384 MB 320 GB 4000 GB 1 Gbps $5899.99 立即购买
搬瓦工日本方案
日本CN2 GIA 2核 2048 MB 40 GB 500 GB 1.2 Gbps $899.99 立即购买
日本CN2 GIA 4核 4096 MB 80 GB 1000 GB 1.2 Gbps $1559.99 立即购买
日本CN2 GIA 6核 8192 MB 160 GB 2000 GB 1.2 Gbps $2999.99 立即购买
日本CN2 GIA 6核 16384 MB 320 GB 4000 GB 1.2 Gbps $5899.99 立即购买
搬瓦工KVM方案
KVM 2核 1024 MB 20 GB 1 TB 1 Gbps $49.99 立即购买
KVM 3核 2 GB 40 GB 2 TB 1 Gbps $99.99 立即购买
KVM 4核 4 GB 80 GB 3 TB 1 Gbps $199.99 立即购买
KVM 5核 8 GB 160 GB 4 TB 1 Gbps $399.99 立即购买
KVM 6核 16 GB 320 GB 5 TB 1 Gbps $799.99 立即购买
KVM 7核 24 GB 480GB 6 TB 1 Gbps $1,199.99 立即购买

标签: 国外云服务器 香港服务器 美国服务器 搬瓦工VPS

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~