- 博客(10)
- 资源 (14)
- 收藏
- 关注
转载 函数设计之高扇入合理扇出
扇出是指一个函数直接调用(控制)其它函数的数目,而扇入是指有多少上级函数调用它。扇出过大,表明函数过分复杂,需要控制和协调过多的下级函数;而扇出过小,如总是1 ,表明函数的调用层次可能过多, 这样不利程序阅读和函数结构的分析, 并且程序运行时会对系统资源如堆栈空间等造成压力。函数较合理的扇出(调度函数除外)通常是3-5。扇出太大,一般是由于缺乏中间层次,可适当增加中间层次的函数。扇出太小,可把下级函数进一步分解多个函数,或合并到上级函数中。当然分解或合并函数时,不能改变要实现的功能,也不能违背函数间的独立性
2020-11-25 10:33:49 2243
原创 我思故我在之编程规范及编程思想篇
一点点记录我对编程的一些思考,不断更新中。。。1、一个好的程序应该是要做到对当前的功能要求按照高内聚,低耦合,模块化进行编程。同时能够对未来可能产生的新功能预留好相应的接口。并且作为嵌入式软件,要为后期的不同平台移植做好分层。2、禁止无效注释,例如:rcvDataFlag = 1;//将rcvDataFlag 值置1.这就是一个无效注释。注释应该体现置1的效果。例如:rcvDataFlag = 1;接收到有效的移动协议数据,需要进一步解析。3、尽量不要一直嵌套,if嵌套5层以上基本上非常不利于代码的阅.
2020-11-24 11:21:20 207
原创 if/ else 你真的会吗?
目录为什么我们写的代码都是if-else?代码if-else代码太多有什么缺点?是否有好的方法优化?如何重构?异常逻辑处理型重构方法实例一:异常逻辑处理型重构方法实例二:异常逻辑处理型重构方法实例三:异常逻辑处理型重构方法实例四:状态处理型重构方法实例一状态处理型重构方法实例二总结 尽可能地维持正常流程代码在最外层,保持主干流程是正常核心流程...
2020-11-24 11:08:46 344
原创 十三、linux编程中目录IO常用编程函数
一、stat函数组(获取文件信息,具体看stat结构体 )1、头文件、函数原型及相关结构体(可以通过man 2 stat 打开对应的stat帮助文档)/*所需头文件*/#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>/*函数原型*/int stat(const char *path, struct stat *buf);– 参数*path:文件路径– 参数*buf:文件信息
2020-11-19 22:38:00 180
原创 十二、Linux系统编程中man命令的使用
一、man命令简介man本身就是linux命令,可以使用man命令查看man的说明文档。二、分页man命令的8个分页:man1:一般命令。常见的linux命令,例如ls,cd,cat等等 man2:用来放内核提供的系统调用或者函数。例如man 2 fork等 man 3:C库函数。 man 4:特殊文件,例如设备和驱动程序 man 5:文件格式。包括完全使用文本配置文件定制系统的操作,大量的配置文件,网络服务列表,可用的shell列表等等 man 6:游戏和屏幕保...
2020-11-09 21:08:01 763
原创 十一、Linux时间
一、获取时间• 获取机器时间函数• time_t time(time_t *t);– 参数*t:以秒为单位的机器时间– 返回值:如果参数为NULL,则返回机器时间;错误返回-1;– time_t类型实际是一个long int类型。/*函数time头文件*/#include<time.h>#include<stdio.h> int main(void){ time_t timep; time(&timep); printf("UTC ti
2020-11-06 22:09:33 280
原创 十、延时之基本知识介绍及实验
• 函数sleep 是秒延时• unsigned int sleep(unsigned int seconds);– 例如:sleep(1),即延时一秒。– 返回值:无符号的整形数值,如果延时成功则返回0,如果延时过程中被打断,则返回剩余的秒数。例如sleep(5),返回值为3,那么实际延时就是5-3=2 秒。函数usleep 是微秒延时• int usleep(useconds_t usec);– Useconds 需要小于1000000– 例如:usleep(10),表示延时10 微秒。
2020-11-06 21:54:04 651
原创 编程格式注意事项---后期慢慢补充
命名法:一、变量1、局部变量 1)定义循环:i,j,z,x,y; 2)单个词时小写,多个词时,使用小驼峰命令;2、模块变量 1)定义成static,使用匈牙利命名法+大驼峰命名法:s_DataLength;3、全局变量 1)使用匈牙利命名法+大驼峰命名法(帕斯卡命名法):g_DataLength;4、指针变量 1)使用匈牙利命名法+大驼峰命名法:*p_DataLength;二、函数 1)小驼峰命名法:fGetData(void);三、宏定义...
2020-11-03 10:07:00 214
原创 九、NFS服务器
一、搭建NFS服务器1、安装Ubuntu NFS服务– apt-get install nfs-kernel-server安装过程弹出对话,选择Y,回车继续安装,安装完成后可以在输入一次上面的命令, ,最后显示如下图,就安装成功了。
2020-11-01 21:21:57 250 1
原创 八、TFTP服务器搭建及应用
一、什么是TFTPTFTP简单文件传输协议,是一个基于UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合TFTP 协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证端口号为69
2020-11-01 21:21:12 335 1
keil常用脚本.zip
2021-03-31
uartapp.zip
2020-10-30
Linux字符设备操作.zip
2020-10-24
XunLeiSetup11.0.2.52xl(抢先体验版).exe
2020-09-14
pure-css3-lighter.zip
2020-04-11
keil5自定义配色方案.zip
2020-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人