C語言/C++編程學習:一個簡單的實例
?????? 讓我們來看一個簡單的C語言程序鹃唯。從下面的程序可以看出編寫C語言程序的一些基本特征。
?????? 如果你能知道該程序將會在顯示器上顯示一些內容瓣喊,那說明你還是知道一些的坡慌!
?????? 確實如此,但所要顯示的確切內容不是顯而易見的藻三,所以請運行程序來觀看結果洪橘。
?????? 首先跪者,用你熟悉的編輯器建立一個上面這個樣的程序,然后給這個程序取一個名字熄求,并以 .c 作為結尾以滿足所在系統(tǒng)對文件名格式的要求渣玲。
?????? 例如,你可以把它命名為 helloworld.c弟晚。 現(xiàn)在編譯并運行該程序 忘衍。
?????? 如果一切運行正常,其顯示結果為:
實例簡單說明
?????? 我們來將程序的源代碼分析一下:
◆? #include ←包含另一個文件
?????? 這是程序的第一行卿城。它的作用相當于你在文件中的這行所在的位置鍵入了文件 stdio.h 的完整內容枚钓。實際上,它是一種剪切和粘貼操作瑟押,這樣可以方便地在多個程序間共享公用的信息搀捷。
?????? #include 語句是 C預處理指令 的一個例子。通常多望,C 編譯器在編譯前要對源代碼做一些準備工作嫩舟;這稱為預處理。
stdio.h 文件作為所有 C編譯包的一部分提供怀偷,它包含了有關輸出輸入函數(shù)的信息以供編譯器使用家厌。這個名字代表標準輸入輸出頭文件。我們稱之為頭文件枢纠,C語言中通常都帶有許多頭文件像街。
◆? int main () ← 函數(shù)名
?????? 接下來的這行代碼聲明了一個 main函數(shù)。一個 C語言程序總是從稱為 main()的函數(shù)開始執(zhí)行的晋渺。
?????? 你可以對你所用的其他函數(shù)任意命名镰绎,但是 main()必須是開始的函數(shù),所以說木西,main()函數(shù)在程序中是唯一的畴栖。
?????? 那么圓括號的功能呢?它們表明 main()是一個函數(shù)八千。以后你將了解到更多的函數(shù)吗讶。但現(xiàn)在,請你記住這個函數(shù)是 C程序的基本模塊恋捆。
?????? int 指明了 main()函數(shù)的返回類型照皆。這意味著 main()函數(shù)返回值的類型是整數(shù)。返回到哪里呢沸停?返回給操作系統(tǒng)膜毁。
?????? 如果瀏覽老版本的 C代碼,你將發(fā)現(xiàn)程序常常以:
main()
?????? 這種形式開始。C90標準勉強允許這種形式瘟滨,但是 C99標準不允許候醒。因此即使你當前的編譯器允許,也不要這么做杂瘸,請注意規(guī)范倒淫。
◆? /* 一個簡單的 C程序 */ ←注釋
?????? 包含在 /* */ 之間的部分是程序注釋。使用注釋的目的是使自己和他人更容易理解你的程序败玉。
?????? C語言的注釋的一個好處就是可以被放在任意的地方敌土,甚至是和它要解釋的語句在同一行。
?????? 一個較長的注釋可以單放一行运翼,或者是多行纯赎。在/* 和 */之間的所有內容都會被編譯器忽略掉。下面是一些正確和不正確的注釋形式:
?????? 也可以這樣寫:
?????? C99 增加了另一種風格的注釋南蹂,它被普遍用在 C++ 和 Java里。這種新形式使用 // 符號念恍,但這種注釋被限制在一行里:
?????? 因為一行的結尾就標志著注釋的結束六剥,所以這種形式只在注釋的開始處需要標志符號。
{ ← 函數(shù)體的開始?} ← 函數(shù)體的結束
{
...
}
?????? 在前面的程序中峰伙,花括號劃定了 main函數(shù)的界線疗疟。通常,所有的 C語言函數(shù)都使用花括號來表示函數(shù)體的開始與結束瞳氓。它們的存在是必不可少的策彤,因此不能丟掉它們。僅有花括號 { } 能起到這種作用匣摘,小括號()和中括號 [ ] 都是不可以的店诗。
?????? 花括號還可以用來把函數(shù)中的語句聚集到一個單元或代碼塊中。
◆? int num音榜; ---聲明語句
?????? 這個語句表明你將使用 num 這個變量庞瘸,并且它是 int(整數(shù))類型的。
?????? 程序中的這一行叫做聲明語句 赠叼。該聲明語句是 C語言中最重要的功能之一擦囊。在 C語言中,所有變量都必須在使用之前定義嘴办。
?????? 這句聲明表達了兩個意思:
第一瞬场,在函數(shù)中你有一個名為 num 的變量。
第二涧郊,int說明 num 是一個整數(shù)贯被,也就是說這個數(shù)沒有小數(shù)點或者小數(shù)部分。編譯器使用這個信息為變量 num在內存中分配一個合適的存儲空間。句末的刃榨;指明了這一行是 C語言的一個語句或指令弹砚。每條語句后面都需要寫上;枢希。
?????? 單詞 int 是 C語言的一個關鍵字桌吃,它代表 C中最基本的一個數(shù)據類型。關鍵字是用來表達語言的單詞苞轿,你不能將它們用于其他目的茅诱。例如,不能把 int 用作一個函數(shù)或者是變量的名字搬卒。
◆? num = 1瑟俭; ←賦值語句
這行程序是一個賦值語句。賦值語句是 C語言的基本操作之一契邀。這個特殊的例子的意思是“把數(shù)值1賦給變量 num”摆寄。可以簡單理解為把1給了num坯门,那么num就是1了微饥。注意賦值語句賦值的順序是從右到左。同樣古戴,該語句也用欠橘;結束語句。
◆? printf ("hello world现恼!"); ←一個函數(shù)調用語句
printf ("hello world肃续! ");
printf ("這是我學習C語言的第%d天! "叉袍,num);
?????? 上面兩句話都使用了 C語言的一個標準函數(shù):printf()始锚;。圓括號表明 printf 是一個函數(shù)名喳逛,程序將識別 “ ” 之間的內容并把它們顯示在屏幕上疼蛾。
?????? 結果顯示的結果應該為:
?????? 那么引號中有字符 ,但并沒有輸出它們艺配!發(fā)生了什么事情呢察郁? 字符代表一個稱為換行符的字符,它意味著“在下一行的最左邊開始新的一行”转唉。
?????? 換行符是轉義字符的一個例子皮钠。轉義字符通常用于代表難于表達的或是無法鍵入的字符。其他的例子比如 代表 Tab鍵赠法, 代表退格鍵盤麦轰。每個轉義字符都用斜線字符()開始乔夯。
?????? 另外,輸出最后一行時 %d 起什么作用款侵?回憶一下末荐,這一行的輸出結果是:
這是我學習C語言的第1天!
?????? 當這一行輸出時新锈,數(shù)字1被符號組合%d代替了甲脏,而1是變量 num的值。%d是一個占位符妹笆,其作用是指出輸出 num 值的位置块请。簡單來說 就是把%d用這行語句后面的num替換。
◆? return 0拳缠; --- 返回語句
?????? return 語句也叫返回語句墩新,它是程序的最后一個語句。在 int main()中 int 表示 main()函數(shù)的返回值應該是一個整數(shù)窟坐。
?????? C標準要求 main()這樣做海渊。帶有返回值的 C語言函數(shù)要使用一個 return 語句,該語句包括關鍵字 return哲鸳,后面緊跟著要返回的值切省,然后是一個分號。
?????? 對于 main()函數(shù)來說帕胆,如果你漏掉了 return語句,則大多數(shù)編譯器將對你的疏忽提出警告般渡,但仍將編譯該程序懒豹。此時,你可以暫時把 main()中的 return語句看作是保持邏輯連貫性所需的內容驯用。
今天的學習就到此為止脸秽,希望你能有所收獲!
學C/C++不易蝴乔,此路應攜手前行记餐。
歡迎關注我的編程公眾號【草莓味貍貓】!
如果你想跟著小編一起學編程的話薇正!
可以來我的C語言C++編程學習基地【搜索進入】片酝!
↓☆↓
還有(源碼,零基礎教程挖腰,項目實戰(zhàn)教學視頻)雕沿!