企业网站建设的成本构成wordpress5.0启多站点

张小明 2026/1/11 18:16:20
企业网站建设的成本构成,wordpress5.0启多站点,重庆百度推广的代理商,公司电商网站开发❀保持低旋律节奏-个人主页 专栏链接#xff1a;《C学习》、《Linux学习》 文章目录头文件实现测试文件实现易错汇总头文件实现 #pragma once #includestdio.h #includestdlib.h // 补充bool类型头文件#xff08;C语言需手动定义或包含stdbool.h#…❀保持低旋律节奏-个人主页专栏链接《C学习》、《Linux学习》文章目录头文件实现测试文件实现易错汇总头文件实现#pragmaonce#includestdio.h#includestdlib.h// 补充bool类型头文件C语言需手动定义或包含stdbool.h#includestdbool.h// 修正C语言中结构体指针必须加struct原代码漏写导致编译报错structListNode{structListNode*next;intval;};//1.Print函数voidPrint(structListNode*phead){structListNode*curphead;if(curNULL){printf(NULL\n);}else{while(cur){printf(%d-,cur-val);curcur-next;}printf(NULL\n);}}// 创建节点函数structListNode*CreateNode(intx){structListNode*newNode(structListNode*)malloc(sizeof(structListNode));if(newNodeNULL){perror(malloc error!);exit(1);}newNode-valx;newNode-nextNULL;returnnewNode;}//1.InsHead头插函数// 二级指针使用原因要修改原头指针的指向一级指针传参是值拷贝无法修改外部指针structListNode*InsHead(structListNode**pphead,intn){structListNode*newheadNodeCreateNode(n);//先把 头节点拼上去newheadNode-next*pphead;//然后在把头节点的职位 交给newheadNode*ppheadnewheadNode;Print(*pphead);return*pphead;}//2.DelHead头删函数// 二级指针使用原因删除头节点后需要修改原头指针的指向比如从h0改为h1一级指针无法修改外部变量structListNode*DelHead(structListNode**pphead){structListNode*newHead;if(*ppheadNULL){perror(DelHead error!);exit(1);}else{newHead(*pphead)-next;(*pphead)-nextNULL;free(*pphead);*ppheadNULL;// 释放后置空避免野指针}Print(newHead);returnnewHead;}//3.InsTail尾插// 注尾插用一级指针即可无需修改原头指针指向仅遍历链表但空链表时返回新节点更合理structListNode*InsTail(structListNode*phead,intn){structListNode*newNodeCreateNode(n);structListNode*curphead;if(pheadNULL){Print(newNode);returnnewNode;}else{while(cur-next!NULL){curcur-next;}cur-nextnewNode;}Print(phead);returnphead;}//4.DelTail尾删// 优化尾删也可封装为二级指针版本避免返回值覆盖保持接口一致性此处保留原逻辑修复bugstructListNode*DelTail(structListNode*phead){structListNode*headphead;if(headNULL){perror(DelTail error: empty list);// 补充错误提示而非直接exitexit(1);}elseif(head-nextNULL){printf(NULL\n);free(head);// 原代码先置next再free顺序不影响但free后head已成野指针无需置nextreturnNULL;}else{structListNode*tmphead;while(tmp-next-next!NULL){tmptmp-next;}free(tmp-next);tmp-nextNULL;// 修正C语言无nullptr统一用NULL原代码混用导致编译报错// tmp-next nullptr;}Print(head);returnhead;}// 查找函数boolFind(structListNode*phead,intn){structListNode*pcurphead;if(pcurNULL){returnfalse;}while(pcur){if(pcur-valn)returntrue;pcurpcur-next;}returnfalse;}// 新增链表销毁函数避免内存泄漏必补// 二级指针使用原因销毁后需要将原头指针置空防止外部使用野指针voidDestroyList(structListNode**pphead){if(ppheadNULL||*ppheadNULL){return;}structListNode*cur*pphead;while(cur){structListNode*tmpcur;curcur-next;free(tmp);}*ppheadNULL;// 销毁后置空原头指针}测试文件实现#includelist.hvoidInit(){ListNode*h0(ListNode*)malloc(sizeof(ListNode));ListNode*h1(ListNode*)malloc(sizeof(ListNode));ListNode*h2(ListNode*)malloc(sizeof(ListNode));ListNode*h3(ListNode*)malloc(sizeof(ListNode));h0-val0;h1-val1;h2-val2;h3-val3;h0-nexth1;h1-nexth2;h2-nexth3;h3-nextNULL;Print(h0);}voidtest1(){ListNode*pheadNULL;pheadInsHead(phead,1);pheadInsHead(phead,2);pheadInsHead(phead,3);pheadInsHead(phead,4);}voidtest2(){ListNode*pheadNULL;pheadInsHead(phead,1);pheadInsHead(phead,2);pheadInsHead(phead,3);pheadInsHead(phead,4);pheadDelHead(phead);pheadDelHead(phead);pheadDelHead(phead);pheadDelHead(phead);}voidtest3(){ListNode*headNULL;headInsTail(head,3);headInsTail(head,2);headInsTail(head,1);headInsTail(head,0);}voidtest4(){ListNode*pheadNULL;pheadInsHead(phead,1);pheadInsHead(phead,2);pheadInsHead(phead,3);pheadInsHead(phead,4);pheadDelTail(phead);pheadDelTail(phead);pheadDelTail(phead);pheadDelTail(phead);}voidtest5(){ListNode*headNULL;headInsTail(head,3);headInsTail(head,2);headInsTail(head,1);headInsTail(head,0);if(Find(head,2)true)printf(找到);else{printf(未找到);}}intmain(){printf(----Init函数----\n);Init();printf(----InsHead----\n);test1();printf(----DelHead----\n);test2();printf(----InsTail----\n);test3();printf(----DelTail----\n);test4();printf(----Find----\n);test5();return0;}易错汇总1.解释为什么头插参数为二级指针并且思考总结什么情况下C语言需要用二级指针2.思考C语言中的 malloc检验机制与C中的检验机制有什么不同 C语言检验机制使用的弊端在哪里3.思考在上述代码中为了防止内存泄漏 都做了free野指针、补充销毁函数。请阐述它们的实现方法。4.思考在上述语法中 C语言和C的语法上面的不同1.关于空NULL与nullptr2.关于结构体 内的成员函数struct ListNode* 与struct ListNode*
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站代理登录域名上海南山做网站

5步实现智能机器人云服务集成:从零到自动化的完整指南 【免费下载链接】ZeroBot-Plugin 基于 ZeroBot 的 OneBot 插件 项目地址: https://gitcode.com/GitHub_Trending/ze/ZeroBot-Plugin 云服务集成正在改变传统运维模式,让智能机器人能够轻松管…

张小明 2026/1/10 14:45:05 网站建设

司法局网站建设加强网站功能建设

Skywork-R1V多模态AI模型完整使用指南:从零开始掌握视觉推理能力 【免费下载链接】Skywork-R1V Pioneering Multimodal Reasoning with CoT 项目地址: https://gitcode.com/gh_mirrors/sk/Skywork-R1V Skywork-R1V系列是目前业界领先的开源多模态推理模型&am…

张小明 2026/1/7 5:42:51 网站建设

环保网站查询碾米是否做备案如何做小程序推广

部署Qwen3-VL-30B:多模态大模型实战指南 在智能文档分析、医学影像解读和自动驾驶语义理解等前沿场景中,AI 正面临一个关键瓶颈:“看得见”不等于“读得懂”。传统视觉语言模型(VLM)往往只能做图文标签匹配&#xff0c…

张小明 2026/1/9 3:35:02 网站建设

网站设计一般要求网站制作 天津

第一章:低代码PHP组件更新机制的核心挑战在低代码平台中,PHP组件的动态更新机制面临多重技术挑战。由于开发人员依赖可视化界面快速构建应用,底层代码的自动生成与版本管理变得尤为复杂。如何在不中断服务的前提下实现组件热更新、确保向后兼…

张小明 2026/1/7 5:42:46 网站建设

网站如何做后台网站翻译建设

目录具体实现截图项目介绍论文大纲核心代码部分展示可定制开发之亮点部门介绍结论源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作具体实现截图 本系统(程序源码数据库调试部署讲解)同时还支持Python(flask,django)、…

张小明 2026/1/7 9:18:09 网站建设

创建一个网站需要怎么做许昌公司做网站

Ubuntu社区资源、参与方式及常见问题解决指南 一、Ubuntu社区资源 Ubuntu社区拥有丰富的资源,能让用户及时了解社区动态、获取技术支持和参与交流。以下是一些重要的社区资源: 1. Ubuntu Weekly Newsletter :网址为https://wiki.ubuntu.com/UbuntuWeeklyNewsletter/ ,该…

张小明 2026/1/9 13:24:47 网站建设