c语言命名规则_学习攻略 | C语言的学习路线,分享C语言程序员编程常见命名规范...

C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。

ce085c63b1a49c724a178d1a2bbd1197.png

它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。简单的说C语言是所有想从事it这行必须掌握的语言,就像你不会英文去国外很难交流一个道理。 包括我们现在用的很多计算机操作系统以及大型的一些软件都是源于C语言的基础编程。C语言还具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言,C语言对于想学好计算机的人来说无疑是非常重要,也是你后期成长的根基。

dda99cdafd9b41818ac2d26dced07c00.png

C语言是底层的语言,学习一定要循序渐进,慢慢来
想要学好C语言,首先要打好基础,可以的话可以想学习一些简单的汇编知识,这有利于你更好的了解计算机底层是如何工作的,在以后学习到指针的过程中也会更轻松,可以在看完一遍C语言的教材后再看汇编的书,但是一定要看一遍,一定会受益匪浅。不管看什么书,先认真地看懂,不要贪速度,应该力求深入的理解。如果能够比较熟练的解决一本教材上的所有习题,那么就应该转入对算法的学习,尽管此时的C语言还称不上精通,有许多细节问题还不了解,许多问题还没有碰到,但是这些问题会在后面的工作和学习中得到解决的。

C语言的学习路线
1、c语言入门 程序设计-算法-运算符-顺序 分支 循环结构。
2、C语言精通 数组-函数字串符-指针-构造类型-预处理-存储管理-文件操作-数据结构。
3、c++入门 面对对象编程-类和对象-运算符重载-派生于继承,异常处理技术-C++语言标准-数据结构-(双向链表-双向队列-树-图)。
4、c++精通-stl标准模板库(容器-迭代器-算法)正则表达式-boost标准模板库-socket网络编程-大型企业项目实战:-员工信息管理系统-推箱子-俄罗斯方块-服务器-播放器-人工智能。
5、windows高级工程师:win32/mfc-windows高级编程-QT框架编程-大型企业级项目实战项目(人脸识别-车牌识别-局域网远程监控-等项目)
6、linux系统应用程序开发-linux内核构架研究-linux顶级网络服务器开发及搭建。
大型企业项目实战(linux内核高级虚拟内存驱动设计-linux网络间谍系统软件-linux内核网络数据劫持-linux网络阅读系统开发

1 常见命名规则
比较著名的命名规则首推匈牙利命名法,
这种命名方法是由Microsoft程序员查尔斯·西蒙尼(Charles Simonyi) 提出的。
其主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。
匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;
前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。
例如:lpszStr, 表示指向一个以'0'结尾的字符串(sz)的长指针(lp)变量。
骆驼(Camel)命名法近年来越来越流行,
在许多新的函数库和Java这样的平台下使用得当相多。
骆驼命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来构成标识符的名字。
其中第一个单词首字母小写,余下的单词首字母大写。
例如:printEmployeePaychecks(),函数名中每一个逻辑断点都有一个大写字母来标记。
帕斯卡(Pascal)命名法与骆驼命名法类似。
只不过骆驼命名法是第一个单词首字母小写,而帕斯卡命名法则是第一个单词首字母大写。
例如:DisplayInfo()和UserName都是采用了帕斯卡命名法。
在C#中,以帕斯卡命名法和骆驼命名法居多。
事实上,很多程序设计者在实际命名时会将骆驼命名法和帕斯卡结合使用,
例如变量名采用骆驼命名法,而函数采用帕斯卡命名法。
另一种流行的命名规则称为下划线命名法。
下划线法是随着C语言的出现流行起来的,在UNIX/LIUNX这样的环境,以及GNU代码中使用非常普遍。
本章所述的命名规则主要基于下划线命名法发展而来。

2 函数的命名
函数名使用下划线分割小写字母的方式命名:
设备名_操作名()
操作名一般采用:谓语(此时设备名作为宾语或者标明操作所属的模块)或者
谓语+宾语/表语(此时设备名作为主语或者标明操作所属的模块) 等形式,如:
tic_init()
adc_is_busy()
uart_tx_char()
中断函数的命名直接使用 设备名_isr() 的形式命名,如:
timer2_isr()

3 变量的命名
变量的命名也采用下划线分割小写字母的方式命名。
命名应当准确,不引起歧义,且长度适中。如:
int length;
uint32 test_offset;
单字符的名字也是常用的,如i, j, k等,它们通常可用作函数内的局部变量。
tmp常用做临时变量名。
局部静态变量,应加s_词冠(表示static),如:
static int s_lastw;
全局变量(尤其是供外部访问的全局变量),应加g_词冠(表示global),如:
void (* g_capture_hook)(void);

4 常量及宏的命名
采用下划线分割大写字母的方式命名,一般应以设备名作为前缀,
防止模块间命名的重复。如:
#define TIMER0_MODE_RELOAD 2
#define TIMER2_COUNT_RETRIEVE(val) ((uint16)(65536 - (val)))
当然,看作接口的宏可以按照函数的命名方法命名,例如:
#define timer2_clear() (TF2 = 0)
#define timer0_is_expired() (TF0)

5 常用缩写词
原词 缩写
addition add 加
subtraction sub 减
multiplication mul 乘法
division div 除法
answer ans 响应、回答
array arr 数组、集合
average avg 平均
buffer buf或buff 缓冲区
capture cap或capt 捕获
check chk 检查
count cnt 计数器
column col 列
control ctrl 控制
decode dec 解码、译码
define def 定义
delete del 删除
destination dst或dest 目的
display disp 显示
encode enc 编码
environment env 环境
error err 错误
float flt 浮动、浮点
frequency freq 频率
header hdr 开始、开头
index idx 索引、指示、
image img 影像、镜像
increment inc 增加、增量
initalize init 初始化
iteration itr 循环、迭代
length len 长度
memory mem 内存
middle mid 中值
make mk 制造、形成
message msg 消息
number num 数量、编号
operand opnd 操作数
optimization opt 最优
operator optr 操作
packet pkt 消息包
positon pos 位置
previous pre或prev 以前的
pointer ptr 指针
record rcd 记录
receive recv 收到、接收
result res 结果
return ret 返回
source src 源头
stack stk 栈
string str 字符串
table tab 表
temporary tmp或temp 临时
total tot 全部的
time stamp ts 时间戳
value val 值

点击:>>>>>>>>>获取方式<<<<<<<<<<<<<<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值