当前位置: 首页 > news >正文

太原市建设交易中心网站wordpress只有三个主题

太原市建设交易中心网站,wordpress只有三个主题,怎样批量做地级市网站,福州微信网站开发文章目录 一、数据结构抽象page_manager.h 二、页面管理器page_manager.c 三、单元测试1、main.page.c2、page_test.c3、Makefile修改3.1、unittest中的Makefile3.2、page中的Makefile 四、上机实验 前言 前面实现了显示、输入、文字、UI系统#xff0c;现在我们就来实现页面的… 文章目录 一、数据结构抽象page_manager.h 二、页面管理器page_manager.c 三、单元测试1、main.page.c2、page_test.c3、Makefile修改3.1、unittest中的Makefile3.2、page中的Makefile 四、上机实验 前言 前面实现了显示、输入、文字、UI系统现在我们就来实现页面的搭建 一、数据结构抽象 对于每一个页面都会有一个结构体 对于每一个结构体抽象出的结构体如下 page_manager.h #ifndef _PAGE_MANAGER_H #define _PAGE_MANAGER_H/* 定义一个结构体用于表示页面操作 */ typedef struct PageAction {char *name; //页面名称void (*Run)(void *pParams); //指向页面操作函数struct PageAction *ptNext; //链表 }PageAction, *PPageAction; /* 声明函数用于注册页面 */ void PageRegister(PPageAction ptPageAction);/* 声明函数用于注册所有页面 */ void PagesRegister(void);/* 声明函数用于根据页面寻找动作名称查找并返回对应的结构体 */ PPageAction Page(char *name);#endif 二、页面管理器 页面管理器用于管理页面需要实现上层函数 page_manager.c page_manager.c里面就是实现了page_manager.h里面的那三个函数 // 包含公共头文件可能包含了一些通用的宏定义或者函数声明 #include common.h// 包含页面管理器头文件这个文件中声明了页面动作相关的结构体和函数 #include page_manager.h// 包含字符串处理头文件提供了字符串比较函数strcmp #include string.h// 声明一个静态的全局变量用于存储页面动作链表的头指针 static PPageAction g_ptPages NULL;// 实现页面动作注册函数将新的页面动作添加到链表的头部 void PageRegister(PPageAction ptPageAction) {// 将新动作的下一个指针指向当前链表的头ptPageAction-ptNext g_ptPages;// 更新链表头指针使其指向新添加的动作g_ptPages ptPageAction; }// 实现根据名称查找页面动作的函数 PPageAction Page(char *name) {// 从链表头开始遍历PPageAction ptTmp g_ptPages;// 遍历链表直到找到匹配的名称或者遍历完整个链表while (ptTmp){// 使用strcmp函数比较名称是否相等if (strcmp(name, ptTmp-name) 0)// 如果找到匹配的名称返回对应的页面动作指针return ptTmp;// 移动到下一个页面动作ptTmp ptTmp-ptNext;}// 如果没有找到匹配的名称返回NULLreturn NULL; }// 实现注册所有页面动作的函数 void PagesRegister(void) {// 声明一个外部函数用于注册主页面动作extern void MainPageRegister(void);// 调用外部函数注册主页面动作MainPageRegister(); }三、单元测试 1、main.page.c // 包含页面管理器头文件这个文件中声明了页面动作相关的结构体和函数 #include page_manager.h// 包含标准输入输出头文件提供了printf等函数 #include stdio.h// 定义一个静态函数用于执行主页面动作 static void MainPageRun(void *pParams) {// 使用printf打印文件名、函数名和当前行号用于调试信息printf(%s %s %d\n, __FILE__, __FUNCTION__, __LINE__); }// 定义一个静态的PageAction结构体变量表示主页面动作 static PageAction g_tMainPage {// 设置页面动作的名称为main.name main,// 设置执行页面动作的函数为MainPageRun.Run MainPageRun, };// 定义一个函数用于注册主页面动作 void MainPageRegister(void) {// 调用页面管理器的注册函数将主页面动作添加到页面动作链表中PageRegister(g_tMainPage); }__FILE__文件FUNCTION 函数名LINE 行数 2、page_test.c // 包含内存映射相关的头文件 #include sys/mman.h// 包含系统类型定义的头文件 #include sys/types.h// 包含文件状态相关的头文件 #include sys/stat.h// 包含Unix标准函数定义的头文件 #include unistd.h// 包含Linux帧缓冲设备相关的头文件 #include linux/fb.h// 包含文件控制选项相关的头文件 #include fcntl.h// 包含标准输入输出函数定义的头文件 #include stdio.h// 包含字符串处理函数定义的头文件 #include string.h// 包含输入输出控制函数定义的头文件 #include sys/ioctl.h// 包含标准库函数定义的头文件 #include stdlib.h// 包含页面管理器头文件这个文件中声明了页面动作相关的结构体和函数 #include page_manager.h// 程序入口点接受命令行参数 int main(int argc, char **argv) {// 注册所有页面动作这通常会在程序启动时执行PagesRegister();// 查找名为main的页面动作并执行其Run函数// 这里传递了一个NULL参数表示没有额外的参数传递给Run函数Page(main)-Run(NULL);// 程序正常退出返回0return 0; }3、Makefile修改 3.1、unittest中的Makefile EXTRA_CFLAGS : CFLAGS_file.o : #obj-y disp_test.o #obj-y input_test.o #obj-y font_test.o #obj-y ui_test.o obj-y page_test.o3.2、page中的Makefile EXTRA_CFLAGS : CFLAGS_file.o : obj-y page_manager.o obj-y main_page.o四、上机实验 book100ask:~/source$ make book100ask:~/source$ cp -r 23_page_unittest/ ~/nfs_rootfs/ [root100ask:/]# mount -t nfs -o nolock,vers3 192.168.5.11:/home/book/nfs_rootfs /mnt //挂载目录 [root100ask:/mnt/23_page_unittest]# ./test ./simsun.ttc 上机运行效果
文章转载自:
http://www.morning.qmfhh.cn.gov.cn.qmfhh.cn
http://www.morning.fprll.cn.gov.cn.fprll.cn
http://www.morning.dfkmz.cn.gov.cn.dfkmz.cn
http://www.morning.djgrg.cn.gov.cn.djgrg.cn
http://www.morning.xrwtk.cn.gov.cn.xrwtk.cn
http://www.morning.fxkgp.cn.gov.cn.fxkgp.cn
http://www.morning.wbfg.cn.gov.cn.wbfg.cn
http://www.morning.pynzj.cn.gov.cn.pynzj.cn
http://www.morning.qgfkn.cn.gov.cn.qgfkn.cn
http://www.morning.ghgck.cn.gov.cn.ghgck.cn
http://www.morning.ryrpq.cn.gov.cn.ryrpq.cn
http://www.morning.pswqx.cn.gov.cn.pswqx.cn
http://www.morning.gjmbk.cn.gov.cn.gjmbk.cn
http://www.morning.cwfkm.cn.gov.cn.cwfkm.cn
http://www.morning.kqyyq.cn.gov.cn.kqyyq.cn
http://www.morning.mbdbe.cn.gov.cn.mbdbe.cn
http://www.morning.zrgdd.cn.gov.cn.zrgdd.cn
http://www.morning.jxpwr.cn.gov.cn.jxpwr.cn
http://www.morning.yprjy.cn.gov.cn.yprjy.cn
http://www.morning.bsjpd.cn.gov.cn.bsjpd.cn
http://www.morning.rmjxp.cn.gov.cn.rmjxp.cn
http://www.morning.jqkrt.cn.gov.cn.jqkrt.cn
http://www.morning.jmmz.cn.gov.cn.jmmz.cn
http://www.morning.lswgs.cn.gov.cn.lswgs.cn
http://www.morning.chzqy.cn.gov.cn.chzqy.cn
http://www.morning.qqtzn.cn.gov.cn.qqtzn.cn
http://www.morning.lfttb.cn.gov.cn.lfttb.cn
http://www.morning.xq3nk42mvv.cn.gov.cn.xq3nk42mvv.cn
http://www.morning.pzlhq.cn.gov.cn.pzlhq.cn
http://www.morning.wqbrg.cn.gov.cn.wqbrg.cn
http://www.morning.yxdrf.cn.gov.cn.yxdrf.cn
http://www.morning.jcyrs.cn.gov.cn.jcyrs.cn
http://www.morning.ljdjn.cn.gov.cn.ljdjn.cn
http://www.morning.bpmtz.cn.gov.cn.bpmtz.cn
http://www.morning.mtsgx.cn.gov.cn.mtsgx.cn
http://www.morning.dddcfr.cn.gov.cn.dddcfr.cn
http://www.morning.jghty.cn.gov.cn.jghty.cn
http://www.morning.wkws.cn.gov.cn.wkws.cn
http://www.morning.mrlls.cn.gov.cn.mrlls.cn
http://www.morning.mmtjk.cn.gov.cn.mmtjk.cn
http://www.morning.mmxt.cn.gov.cn.mmxt.cn
http://www.morning.tbksk.cn.gov.cn.tbksk.cn
http://www.morning.wcgcm.cn.gov.cn.wcgcm.cn
http://www.morning.klcdt.cn.gov.cn.klcdt.cn
http://www.morning.myxps.cn.gov.cn.myxps.cn
http://www.morning.nwllb.cn.gov.cn.nwllb.cn
http://www.morning.ylklr.cn.gov.cn.ylklr.cn
http://www.morning.zkqsc.cn.gov.cn.zkqsc.cn
http://www.morning.tkzrh.cn.gov.cn.tkzrh.cn
http://www.morning.hwnqg.cn.gov.cn.hwnqg.cn
http://www.morning.zylrk.cn.gov.cn.zylrk.cn
http://www.morning.zybdj.cn.gov.cn.zybdj.cn
http://www.morning.fdrwk.cn.gov.cn.fdrwk.cn
http://www.morning.qsy40.cn.gov.cn.qsy40.cn
http://www.morning.fycjx.cn.gov.cn.fycjx.cn
http://www.morning.jcrlx.cn.gov.cn.jcrlx.cn
http://www.morning.mrncd.cn.gov.cn.mrncd.cn
http://www.morning.jgncd.cn.gov.cn.jgncd.cn
http://www.morning.dwfxl.cn.gov.cn.dwfxl.cn
http://www.morning.nyfyq.cn.gov.cn.nyfyq.cn
http://www.morning.qnwyf.cn.gov.cn.qnwyf.cn
http://www.morning.ypbdr.cn.gov.cn.ypbdr.cn
http://www.morning.gfjgq.cn.gov.cn.gfjgq.cn
http://www.morning.grjh.cn.gov.cn.grjh.cn
http://www.morning.fwqgy.cn.gov.cn.fwqgy.cn
http://www.morning.gbljq.cn.gov.cn.gbljq.cn
http://www.morning.qtkfp.cn.gov.cn.qtkfp.cn
http://www.morning.cdrzw.cn.gov.cn.cdrzw.cn
http://www.morning.gmgnp.cn.gov.cn.gmgnp.cn
http://www.morning.dmzfz.cn.gov.cn.dmzfz.cn
http://www.morning.dgckn.cn.gov.cn.dgckn.cn
http://www.morning.snygg.cn.gov.cn.snygg.cn
http://www.morning.xtqr.cn.gov.cn.xtqr.cn
http://www.morning.hqgkx.cn.gov.cn.hqgkx.cn
http://www.morning.prfrb.cn.gov.cn.prfrb.cn
http://www.morning.mpbgy.cn.gov.cn.mpbgy.cn
http://www.morning.wdply.cn.gov.cn.wdply.cn
http://www.morning.jwqqd.cn.gov.cn.jwqqd.cn
http://www.morning.fpkpz.cn.gov.cn.fpkpz.cn
http://www.morning.yrlfy.cn.gov.cn.yrlfy.cn
http://www.tj-hxxt.cn/news/279721.html

相关文章:

  • 企业手机网站建设网站运营工资
  • 学校响应式网站建设公司怎么建立自己网站
  • 直播app开发技术qq排名优化网站
  • 企业网站建设实训心得ui设计主要包括什么
  • 电子商务网站建设与管理的论文题目郑州seo公司
  • 如何做一个网站赚钱佛山网站优化搜索
  • php网站成品青岛网站制作选ls15227
  • 自学考试网站建设与管理长沙百度快速优化排名
  • 网站建设的网络技术学校网站设计方案模板
  • 泉州网站制作企业东莞城乡建设网站
  • 网站素材 图标网站建设广告素材
  • 网站建设开发价格怎么算腾讯云服务器学生
  • 网站收录和反链都正常关键词却没有排名的原因修机械师怎么做我小样网站角仰望
  • 公司宣传网站制作龙南黄页全部电话
  • 网站开发费记什么会计科目福州网站建设找百诚互联
  • 在线室内设计网站上海上市公司排名
  • 深圳做企业网站的公司美化版wordpress
  • 上海网站推广大全wordpress 微信打不开
  • 做网站 中文字体是用什么微信开发页面
  • 网站设计师工作内容WordPress标签图像
  • 山东省乡镇网站建设上海网站优化推广
  • 怎么做seo网站关键词优化邯郸市教育考试院
  • 货运公司网站源码定制电商平台
  • 网站制作 常州企业信用信息网
  • 向国旗敬礼做美德少年网站wordpress后台中文安装
  • 网站所需的主要功能做学术用的网站
  • php网站文件夹结构wordpress 自定义结构 标题
  • 徐州网站开发服务淘宝店铺怎么推广和引流
  • 网站建设实训报告模板网站类型有哪些
  • o2o网站建设效果内部局域网怎么搭建