# 【知識精講】在程序中添加注釋
## Part1
在前面的課程中,我們看到一些給出的代碼中一些以`//`開頭的內容,這些以`//`開頭的內容是一種用于解釋說明的信息,我們稱之為**注釋**。
在代碼比較長,或者程序設計的邏輯比較復雜的時候,我們就需要為程序寫一些注釋了。在 C/C++ 語言中,一共有兩種注釋的方式——第一種是我們已經看到的在某一行中插入`//`的形式,這行中,`//`后的所有內容將在程序編譯時被忽略,成為僅被程序員所關注的內容。我們將這種形式的注釋稱為**行注釋**。
## Part2
在 C++ 語言中,還有另一種注釋——以`/*`作為開頭,以`*/`作為結尾。在一對`/*`與`*/`之間的所有內容都會被作為注釋的內容,只讓程序員作為參考,而在程序編譯時不被關注。我們將這種形式的注釋稱為**塊注釋**。
行注釋和塊注釋的目的其實都是一樣的,小渡在課程代碼中寫一些注釋,可以幫助你了解如何更好的學會程序;你寫一些注釋可以讓自己在之后回顧時不至忘記自己的想法,也可以讓和你一起寫程序的其他人更容易地看懂你的程序。
## Part3
你可能會好奇:既然有兩種不同的注釋,什么時候用塊注釋、什么時候用行注釋呢?
一般來說,對于以下兩種情況下,我們會使用塊注釋:
* 需要把一大段代碼暫時性注釋掉的時候
* 使用一些會讀取代碼中塊注釋來生成文檔的工具的時候
除了以上的兩種情況,我們都建議大家使用行注釋,哪怕是連續的幾行文字,我們都依然建議你分成多個連續行注釋來進行說明,而不是使用一個跨多行的塊注釋。
## Part4
你是不是有些懷疑小渡的說法?來讓我帶你來看一個多行注釋寫法可能造成的問題。
~~~
int main() {
cout << "Hello"; /* 說你好 */
cout << "World";
return 0;
}
~~~
對于上面給出的情況,如果我們需要暫時性注釋掉 main 函數內的前兩行代碼,我們將得到一個這樣的代碼片段:
~~~
/*
cout << "Hello"; /* 說你好 */
cout << "World";
*/
~~~
這種情況下,第一個`cout`開始前的`/*`和“說你好”后的 `*/` 將會被匹配。而編譯器將無法正常的對之后的一個`*/`進行理解。這種問題是不是我們不希望出現的呢?如果我們平時都用單行注釋,是不是就不會有這樣的問題了呢?
- 教材介紹
- 《編程初學入門常識》
- 什么是程序語言
- 【知識精講】編程與編程語言
- 【選擇測試】編程語言分類
- 【知識精講】高級語言分類
- 【選擇測試】編譯與解釋
- 【選擇測試】程序員笑話-Java
- 熟悉鍵盤上用于編程的鍵位
- 【知識精講】認識你的鍵盤
- 【知識精講】中文和英文字符
- 【匹配測試】識別中英文符號
- 【選擇測試】中英文符號的影響
- 【伴隨編程】不要使用中文引號
- 【伴隨編程】不要使用中文分號
- 【伴隨編程】正確地輸入符號
- 【選擇測試】找出程序中的錯誤
- 初始工程師思維
- 【知識精講】二進制思想
- 【選擇測試】程序員笑話-湊整
- 【知識精講】閉合的邏輯
- 【選擇測試】程序員笑話-條件
- 程序員職業與生活
- 【知識精講】程序員的發展方向
- 【知識精講】程序員的裝備
- 【知識精講】程序員的健康
- 【選擇測試】做一名健康的程序員
- 《C++程序設計》
- 前言
- 【知識精講】編程與計算機科學
- 【知識精講】編程與軟件工程
- 【知識精講】如何學習編程
- 你好C++
- 【知識精講】你好,C++
- 【知識精講】C++程序是如何開發的
- 【知識精講】成為一名Power User
- 【伴隨編程】讓我們一起說你好
- 【知識精講】你的第一個C++語言程序
- 【伴隨命令】編譯、運行你的程序
- 【伴隨編程】將變量流式輸出
- 【選擇測試】變量的作用域
- 【知識精講】變量與數據類型
- 【匹配測試】C++語言的入門概念
- 【知識精講】在程序中學會換行
- 【選擇測試】正確地換行
- 簡單數學運算
- 【知識精講】重新認識基本運算
- 【選擇測試】運算符的理解
- 【伴隨編程】做一下簡單的運算
- 【伴隨編程】a 的 n 次方
- 【知識精講】數學函數
- 【伴隨編程】讓C++語言變成計算器
- 【伴隨編程】計算球的體積
- 【匹配測試】數學世界知多少
- 【知識精講】在程序中添加注釋
- 【選擇測試】正確地寫注釋
- 從伴隨輸入到變量地址
- 【伴隨編程】 一個數字復讀機器
- 【選擇測試】理解標準輸入輸出
- 【伴隨編程】一個加法計算器
- 【程序設計】A+B+C問題
- 【伴隨編程】簡單的I/O格式控制
- 【知識精講】地址與取地址符
- 【伴隨編程】看看我們的地址
- 習題一:面積與周長
- 【程序設計】矩形面積與周長
- 【程序設計】三角形面積與周長
- 【程序設計】圓形面積與周長
- 程序中的是與非
- 【知識精講】是非的表示與關系運算
- 【伴隨編程】驗一驗關系運算式
- 【選擇測試】關系運算式求值
- 【知識精講】如果的意義
- 【伴隨編程】分段函數求值
- 【知識精講】如果之后的如果
- 【伴隨編程】五則運算器
- 【選擇測試】分支的嵌套
- 【伴隨編程】問號表達式
- 【知識精講】是非之間的邏輯組合
- 【伴隨編程】判斷閏年
- 【程序設計】日期合法性
- 【知識精講】多路順序結構
- 【知識精講】在程序中學會縮進
- 【選擇測試】正確的縮進
- C++程序中的苦力
- 【知識精講】使用循環結構
- 【選擇測試】對比兩種循環
- 【伴隨編程】使用while循環
- 【填空測試】理解循環結構
- 【知識精講】自減和自增運算符
- 【伴隨編程】使用自增運算符
- 【知識精講】for循環
- 【選擇測試】for循環的使用
- 【程序設計】一大波好玩兒的程序
- 《代碼能力快速提升》
- 《基礎數據結構》
- 《搜索入門》
- 《動態規劃基礎》
- 《數論和基礎數學》
- 《圖和數基礎》