首页
/
每日頭條
/
生活
/
c語言字符編碼怎麼用
c語言字符編碼怎麼用
更新时间:2025-11-07 12:08:27

寫代碼就像寫文章,需要準确地使用标點符号,合理地劃分段落。

編寫代碼時,遵守統一的編碼規範,讓排版美觀,可增強代碼易讀,降低出錯的可能性。

标識符命名規範

綜合各類語言,目前常見的命名方法包括:

駝峰命名(Camel case):标識符由多個單詞組成,第一個單詞全小寫,後面的所有單詞首字母大寫

PASCAL命名(Pascal case):标識符由多個單詞組成,所有單詞的首字母大寫

小蛇命名(Snake case):标識符由多個單詞組成,所有單詞均小寫,以下劃線拆分單詞

大蛇命名(Snake case):标識符由多個單詞組成,所有單詞均大寫,以下劃線拆分單詞

烤串命名(kebab case):标識符由多個單詞組成,所有單詞小寫,以中劃線拆分單詞(常用于url中)

匈牙利命名:标識符中包含作用域和類型信息。

例如:

#define USER_NAME_MAX_LENGTH 20 /* 大蛇命名 */ char userName[USER_NAME_MAX_LENGTH]; /* userName遵守駝峰命名 */ char UserName[USER_NAME_MAX_LENGTH]; /* UserName遵守PASCAL命名 */ char user_name[USER_NAME_MAX_LENGTH]; /* user_name遵守小蛇命名 */ char g_cUserName[USER_NAME_MAX_LENGTH]; /* 匈牙利命名,g代表全局變量,c代表char類型 */

C語言,标識符命名采用小蛇命名和大蛇命名,變量名、函數名等按照小蛇命名;枚舉常量、宏定義等按照大蛇命名。

縮進規範
  • 縮進使用4個空格(不建議用制表符Tab),建議在編輯器中,設置顯示空格和制表符

VSCode的設置:

c語言字符編碼怎麼用(C語言編碼規範)1

vscode顯示空格設置

SourceInSight的設置:

c語言字符編碼怎麼用(C語言編碼規範)2

SourceInSight顯示空格設置

Notepad 的設置

c語言字符編碼怎麼用(C語言編碼規範)3

Notepad 顯示空格設置

Visual Studio 2015的設置

c語言字符編碼怎麼用(C語言編碼規範)4

VisualStudio2015顯示空格設置

空格規範
  • 雙目運算符、三目運算符,運算符兩端各加一個空格

/* 雙目運算符 */ = - < > * / % | & ^ <= >= == != /* 三目運算符 */ ? :

例如:

c = a b; /* good */ c=a b; /* bad */

  • 單目運算符,與操作數之間不要加空格

/* 單目運算符 */ & * - ~ ! sizeof -- /* 結構體成員運算符 */ .和->

例如:

i ; /* good */ i ; /* bad */

  • if, switch, case, for do, while等關鍵字後面需要加空格

if (condition) {}

  • sizeof, typeof, alignof, attribute等關鍵字後面不要加空格
  • 小括号内的表達式前後不要加空格

s = sizeof(struct file);

  • 定義指針變量時,星号貼近名字,而不應該貼近類型

char *str;

大括号規範
  • 左大括号放在行尾,右大括号放在行首
  • 函數是一個特例,左大括号獨占一行

switch (action) { /* 左大括号放在行尾 */ case KOBJ_ADD: return "add"; case KOBJ_REMOVE: return "remove"; case KOBJ_CHANGE: return "change"; default: return NULL; } /* 右大括号放在行首 */ int function(int x) { /* 函數是一個特例,左大括号獨占一行 */ body of function }

  • 為方便代碼維護,即使條件語句中隻有一條語句,也建議使用大括号

if (condition) { do_this(); do_that(); } else { otherwise(); /* 隻有1條語句,建議使用大括号 */ }

斷行規範

為方便代碼編寫和閱讀,每行代碼長度不要超過80列,代碼中的字符串除外(為了方便字符串的閱讀和查找,同一個字符串,長度超過80列時不建議分成多行)。

注釋規範

為代碼寫注釋是個好習慣,但不要過度。注釋中不要試圖解析您的代碼如何(HOW)工作,最好的方式是代碼本身就清晰地說明了它是如何工作的。

通常情況下,注釋用來說明你的代碼在做什麼(WHAT),以及為什麼這麼做(WHY),記錄避免描述怎麼做(HOW)。

  • 給文件加上文件頭注釋

/****************************************************************************** * Copyright 2022 * * @file eraser_lib.cpp * * @brief * *============================================================================= * Revision History * Version Date Author Content * ------- ---------- --------- --------------------------------------- * V1.00 2022/03/12 yangyf Create. * *****************************************************************************/

  • 給函數加上函數頭注釋

/****************************************************************************** * @fn uint16_t calc_crc16(uint8_t const *data, int32_t data_len) * * @brief 計算16位的crc校驗碼 * * @param p_data 待校驗數據的首地址 * @param data_len 數據長度 * * @return CRC value, 0x0000 ~ 0xFFFF */ uint16_t calc_crc16(uint8_t const *data, int32_t data_len) { // ...... }

~ END ~

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
2023春運幾号開始幾号結束 今年春運是從幾日開始到幾日結束
2023春運幾号開始幾号結束 今年春運是從幾日開始到幾日結束
導語:最近小編有些朋友不知道2023春運幾号開始幾号結束?今年春運是從幾日開始到幾日結束?一起來看看。2023春運幾号開始幾号結束2023年春運從1月17日開始2月25日結束共40天。根據鐵路集團有限公司的公告通知,2023年春運期間的各類火車票,提前十五天開始放票發售,所以一月二日就可以購買春運第...
2025-11-07
腌50個鴨蛋放多少鹽
腌50個鴨蛋放多少鹽
腌50個鴨蛋大概需要放600克鹽來腌制,喜歡鹹一點的可以适量加一點鹽,喜歡流油比較多的,盡量放少點鹽,可以多腌制幾天。鴨蛋,又名鴨子、鴨卵、太平、鴨春、青皮等,為鴨科動物家鴨的卵,受精卵可孵化成小鴨。鴨蛋由蛋殼、殼膜、氣室、蛋白、蛋黃、系帶、胚珠或胚盤等部分組成。鴨蛋主要含蛋白質、脂肪、鈣、磷、鐵、...
2025-11-07
快樂秋分的祝福語
快樂秋分的祝福語
秋分,是二十四節氣之第十六個節氣,秋季第四個節氣,秋分這天太陽幾乎直射地球赤道,全球各地晝夜等長,這個時候需要開始注意保暖,以免受涼。下面是小編精心整理的快樂秋分的祝福語,歡迎大家查閱。快樂秋分的祝福語1、秋分來了,把我的快樂分你一半,希望你快樂天天;把我的好運分你一半,願你好運連連;把我的祝福分你...
2025-11-07
簡單大氣的結婚祝福文案
簡單大氣的結婚祝福文案
新郎和新娘,牽手進禮堂,在鮮花圍繞中緩緩現身,作為其他人會在請柬或者宴席上送出祝福,給與新人最美好的祝願,那麼下面是小編整理的簡單大氣的結婚祝福文案,歡迎進行查閱,謝謝大家。簡單大氣的結婚祝福文案1、幸福,是執子之手,與子偕老的點點滴滴。2、路遙遙,船悠悠,纏纏綿綿話不休。風柔柔,月明明,鐘愛一生是...
2025-11-07
截圖怎麼截
截圖怎麼截
1、使用電腦自帶截圖功能。電腦自身就有截圖功能,它可以截全屏和當前的活動窗口,按鍵就是鍵盤上的“Pr...
2025-11-07
Copyright 2023-2025 - www.tftnews.com All Rights Reserved