.net 网站优化wordpress示例页面

张小明 2026/1/1 14:24:42
.net 网站优化,wordpress示例页面,微信漫画网站模板,国际外贸网站推广顾名思义#xff0c;所谓的指针函数#xff0c;也就是函数返回值类型为指针类型#xff08;返回地址#xff09;的函数#xff0c;函数格式差不多就是下面这个造型#xff1a;数据类型 *函数名(形参1, …, 形参n );或者更直观更易看懂的造型#xff1a;(数据类型 *) 函数…顾名思义所谓的指针函数也就是函数返回值类型为指针类型返回地址的函数函数格式差不多就是下面这个造型数据类型 *函数名(形参1, …, 形参n );或者更直观更易看懂的造型(数据类型 *) 函数名(形参1, …, 形参n );其中数据类型可以为基本数据类型整型浮点型等如下声明一个返回整型指针的指针函数复制int*add(inta,intb); 或者(int*)add(inta,intb);也可以为复合数据类型最常用的应该就是结构体类型如下声明一个返回结构体指针的指针函数复制ST_DEVICE_STATUS*get_device_status(void); 或者(ST_DEVICE_STATUS*) get_device_status(void);其中ST_DEVICE_STATUS为结构体类型。那究竟指针函数有哪些应用呢指针函数一般可以用来返回字符串和全局变量地址或者返回结构体指针等。1、返回字符串和全局变量地址可以直接返回字符串常量的地址复制char*getMessage(void){returnHello World;// 字符串常量存储在静态区}可以直接返回全局变量的地址复制intg_Value;int*getValue(void){returng_Value;}上面为什么强调说是返回全局变量的地址呢局部变量不行吗是的不能通过上面的方式返回局部变量的地址因为局部变量在函数结束的时候其生命周期也跟着结束了返回的局部变量指针会变成所谓的悬垂指针Dangling Pointer此时你可能会正常读取到局部变量的值但这并不代表代码正确也可能会读取到垃圾值甚至是程序崩溃即所谓的未定义行为我们来实际测试看下结果复制int*getValue(void){intl_value 100;//定义一个局部变量并初始化为100returnl_value;//尝试返回局部变量的地址}程序编译无错误但直接来一条警告信息说明这种操作就存在风险了所以说程序编译时我们也需要关注一下警告信息不能只关注错误信息。至于程序运行结果是不是100咱们就不看了。2、返回结构体指针返回结构体指针其实也是指针函数的很常见的应用它可以以一个简单操作对全局结构体变量的数据进行读写操作非常方便并且避免了直接暴露全局结构体变量到程序代码中。我们来看下代码复制//定义一个结构体记录和更新设备相关的状态信息typedefstruct{uint8_tdevice_status_error;uint8_tdevice_status_alarm;uint8_tdevice_status_warning;} ST_DEVICE_STATUS;//定义一个全局结构体变量记录设备状态信息ST_DEVICE_STATUS g_stDeviceStatus;//定义一个指针函数返回设备状态结构体指针数据(ST_DEVICE_STATUS *) getDeviceStatus(void){returng_stDeviceStatus;}//使用指针函数voidfunc(void){ST_DEVICE_STATUS *pDeviceStatus;pDeviceStatus getDeviceStatus();//读设备状态读操作相当于直接读全局变量g_stDeviceStatusif(pDeviceStatus- device_status_error){}elseiif(pDeviceStatus- device_status_alarm){}//清除设备状态写操作相当于直接写全局变量g_stDeviceStatuspDeviceStatus- device_status_error 0pDeviceStatus- device_status_alarm 0}以上的代码通过指针函数的方式封装了全局结构体变量除了指针函数里直接操作了全局变量其余代码完全不需要直接操作全局变量不仅方便读写也增强了代码的可维护性和可读性。再给大家看下作者开发的实际项目代码另外还可以用来创建链表节点看下面代码复制//定义一个指针函数创建链表节点structNode* createNode(intdata){structNode* node (structNode*)malloc(sizeof(structNode)); node-data data;returnnode;// 返回结构体指针}但是使用指针函数时也需要注意以下几点1、如前文所述一定要注意不要试图返回一个局部变量的地址2、函数返回值的类型和定义的类型一定要匹配3、要注意区分指针函数和函数指针后续文章会介绍函数指针以下的对比基本上就可以看出两者的区别名称基本格式描述原因指针函数int * func(int a, int b) 或者int *func(int a, int b)本质是一个函数返回指针的函数括号优先级大于*func会先与右边结合构成一个func函数函数指针int (*func)(int a, int b)本质是一个指针指向函数的指针*func是一个整体指向int (int a, int b)函数的一个指针---------------------作者dffzh链接https://bbs.21ic.com/forum.php?modviewthreadtid3461016来源21ic.com此文章已获得原创/原创奖标签著作权归21ic所有任何人未经允许禁止转载。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

招远做网站案例wordpress 前台密码

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 制作一个面向初学者的Jupyter Notebook安装教程。要求:1. 使用最简单的语言解释每个步骤;2. 只推荐一种最通用的安装方法(如Anaconda&#xff09…

张小明 2025/12/24 2:21:14 网站建设

百度刷自己网站的关键词个性logo设计北京vi设计公司

终极M3u8下载指南:3分钟掌握高效下载技巧 【免费下载链接】M3u8Downloader下载工具 M3u8 Downloader是一款高效、易用的开源下载工具,专为M3u8格式文件设计。经过优化,它能够快速获取并下载最新、最完整的资源,即使是大型文件也能…

张小明 2025/12/24 2:20:11 网站建设

网站的建设分析北京全网营销推广公司

零基础也能轻松上手的Ocrad.js安装教程:5分钟搞定JavaScript OCR识别 【免费下载链接】ocrad.js OCR in Javascript via Emscripten 项目地址: https://gitcode.com/gh_mirrors/oc/ocrad.js 想要在网页中实现文字识别功能却不知从何入手?Ocrad.js…

张小明 2026/1/1 11:30:32 网站建设

网站分享做描点链接免费网站建设网站

终极指南:如何用深蓝词库转换实现30输入法词库自由迁移 【免费下载链接】imewlconverter ”深蓝词库转换“ 一款开源免费的输入法词库转换程序 项目地址: https://gitcode.com/gh_mirrors/im/imewlconverter 还在为不同输入法间的词库壁垒而困扰吗&#xff1…

张小明 2025/12/24 2:18:04 网站建设

广州化妆品网站建设公司全国招商代理项目

FLUX.1-ControlNet统一模型Pro 2.0发布 在生成式AI快速演进的今天,图像生成不再只是“输入文字、输出画面”的简单过程。越来越多的应用场景要求模型具备精确的空间控制能力——比如让角色摆出特定姿势、复现建筑草图的轮廓结构,或根据深度信息构建逼真…

张小明 2025/12/24 2:17:01 网站建设

青岛创世网络网站建设django成品网站源码

GPT-OSS-Safeguard-20B:开源AI安全推理模型重构内容审核范式 【免费下载链接】gpt-oss-safeguard-20b 项目地址: https://ai.gitcode.com/hf_mirrors/openai/gpt-oss-safeguard-20b 导语 OpenAI推出的GPT-OSS-Safeguard-20B开源安全推理模型,以…

张小明 2025/12/24 2:15:58 网站建设