一、C語言基礎知識的學習方法
1)我的課程內容是精心整理的,某些知識點可能沒有提到應用場景,但絕對不會是沒用的知識。課程中沒有提到的知識可以了解一下,但不必深入學習,意義不大。
2)學習不要貪快,欲速則不達的道理大家應該明白,學習的重點是培養寫程序的感覺。
3)不要記筆記,不要記關鍵字,不要記函數的參數,忘了就忘了,忘了是因為沒有經過實戰,所以,到了項目實戰課程的時候,忘了內容很自然的會全部想起來。
4)不要用手機看視頻,看着看着就想睡覺,學習的過程是邊看邊寫,沒有看出來的程序員。趙括,知道不?就是那個空讀兵書不成器的家伙,只看書看視頻不寫程序,和趙括沒什么不同。
5)程序員的指法很重要,翹着二郎腿,嘴里叨着煙,揮舞一指禪,一副吊兒郎當的樣子,是成不了程序員的。
6)學習的過程中遇到的問題,如果三十分鍾解決不了,不要糾纏,在群里向大家請教。但是,反對遇到問題不經思考就提問的方式。
7)開始學習C語言之前,必須先熟悉Linux環境,掌握Linux常用命令和vi的基本用法。
8)高手都是從菜鳥開始的,只要您按視頻教程一步一個腳印的學習,一定能成為優秀的程序員。
二、C語言程序開發的流程
現階段,我們編寫的C程序比較簡單,程序開發的流程如下:
三、安裝C語言的編譯器
Linux下C語言的編譯器是gcc,以root用戶登錄,執行以下命令安裝它:
yum -y install gcc
注意,如果您的服務器沒有安裝gcc,以上命令就會安裝最新版本的gcc,如果已經安裝了gcc,就會更新到最新版本,所以,以上命令不管執行多少次都沒有問題。
安裝gcc的前提條件是服務器必須可以訪問互聯網。
四、C程序的基本結構
C 程序主要包括以下部分:
1)注釋(說明文字)
2)預處理指令
3)主函數入口
4)主函數體
示例(book1.c)
/*
* 程序名:book1.c,此程序用於演示C程序的基本結構。
* 作者:C語言技術網(www.freecplus.net) 日期:20190525
*/
// 預處理指令,把頭文件stdio.h包含進來。
#include <stdio.h> // standard input output
// 主函數main,這里是程序執行的起點。
int main()
{
// 調用printf函數在屏幕上輸出文字。
printf("我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。\n");
return 0; // main函數返回
}
接下來我們講解一下上面這段程序。
1、程序的注釋
/*
* 程序名:book1.c,此程序用於演示C程序的基本結構。
* 作者:C語言技術網(www.freecplus.net) 日期:20190525
*/
// 預處理指令,把頭文件stdio.h包含進來。
// standard input output
// 主函數main,這里是程序執行的起點。
// 調用printf函數在屏幕上輸出文字。
// main函數返回
以上是C程序的注釋(說明文字),注釋的目的是為了提高程序的可讀性,是給程序員看的,不是給計算機看的,編譯器編譯程序時將忽略它。
/* */用於注釋多行文字,/*是開始,*/是結束。
// 用於注釋一行文字,可以獨占一行,也可以放在代碼的后面。
2、預處理指令
#include <stdio.h> // standard input output
這一行是(編譯)預處理指令,告訴 C
語言編譯器在編譯之前要包含stdio.h文件,程序中使用了printf函數,如果不包含它的頭文件,編譯時會出現警告或報錯。
3、主函數的入口
int main()
main是主函數,程序從這里開始執行。在同一程序中,main函數只能有一個。
4、主函數體
printf("我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。\n");
return 0; // main函數返回
主函數體的代碼在一對花括號,本程序的主函數體有兩行代碼。
第一行代碼調用了printf函數,printf函數的功能是把內容輸出到屏幕,這里是輸出一行文字,文字結尾的\n表示換行,多個\n就可以輸出多個換行。
第二行代碼return 0;表示主函數返回,程序退出。
注意,main函數體中的空行和每行代碼前面的空格是為了提高程序的可讀性,對程序的功能沒有任何影響。
五、編譯並執行 C 程序
在Linux的命令行下用gcc命令編譯源程序book1.c。
gcc -o book1 book1.c
編譯完成后,將生成目標程序book1(可執行程序名由-o參數指定),加./執行它。
./book1
執行的結果是在屏幕上輸出一行文字。
我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。
運行效果
六、知識總結
/**/ 多行注釋。
// 單行注釋。
#include 包含其它文件的預處理指令。
main 程序執行的起點。
{} 函數體、語句塊的開始和結束。
() 函數的參數放在括號中。
"" 字符串放在雙引號中。
\n 換行符。
; 分號,一行代碼的結束。
1)以上都是C語言的語法約定,是規則,不可改變,不能質疑,必須遵守;
2)C語言嚴格區分大小寫;
3)中文的全角標點符號C語言無法識別,編譯時會報錯;
4)C程序以分號“; ”表示一條語言的結束,多條語句可以書寫在一行。
5)如果某行代碼只有分號“; ”,表示一條空語句,什么也不做。
七、課后作業
1)請寫一個最簡單的C程序,實現什么功能無所謂,代碼越少越好。
2)有一個坑,中國程序經常掉進去,但美國程序卻不會,請問這是個什么坑?
3)在屏幕中輸出詩經《我是一只傻傻鳥》,源程序命名為book2.c,執行的效果如下:
4)請在屏幕中間用符號“*”拼出一個大大的字母H,源程序命名為book3.c,執行的效果如下:
八、版權聲明
C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。
來源:C語言技術網(www.freecplus.net)
作者:碼農有道
如果文章有錯別字,或者內容有錯誤,或其他的建議和意見,請您留言指正,非常感謝!!!