電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 編程學習 >> C語言 >> 正文

C語言常見命名規范

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018/3/30

 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 值

Tags:C語言常見命名規范,C語言,命名規范  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊。 昵稱:注冊  登錄
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
最近免费韩国电影hd免费观看 | 永久免费a∨片在线观看| 无码超乳爆乳中文字幕久久| 国产精品久久福利网站| 任你躁国产自任一区二区三区 | 在线精品免费视频| 北条麻妃作品在线观看 | 99久久免费国产精品| 狠狠躁日日躁夜夜躁2022麻豆| 无码任你躁久久久久久老妇| 国产成人av一区二区三区在线观看 | 亚洲av日韩av天堂影片精品| 97久久精品无码一区二区天美 | chinese乱子伦xxxx视频播放| 男女性杂交内射女BBWXZ| 性护士movievideobest| 国产丰满肥熟在线观看| 久久夜色精品国产嚕嚕亚洲av| 麻豆国内精品欧美在线| 最近中文字幕最新在线视频| 国产精品va无码免费麻豆| 亚洲国产成人精品女人久久久| 91精品国产91久久| 樱桃直播免费看| 国产疯狂露脸对白| 亚洲av午夜精品无码专区| 顶级欧美色妇xxxxx| 日韩av无码一区二区三区| 国产喷水女王在线播放| 久久国内精品自在自线软件| 耻辱にまみれた失禁调教| 无码色偷偷亚洲国内自拍| 噜噜噜亚洲色成人网站| 一级毛片免费全部播放| 男女xx00动态图120秒| 天仙tv在线视频一区二区| 亚洲综合色区中文字幕| 999国产精品999久久久久久| 最近的免费中文字幕视频| 国产在线精品国自产拍影院午夜 | 香蕉视频黄色在线观看|