C語言編程入門之--第三章編寫第一個C語言程序


 

  導讀:一般學一門計算機語言的第一堂上機課(“上機”顧名思義,上計算機,機你太美),就是往屏幕輸出“hello world”,本章也不例外。

 

3.1 Hello,World!

  這一節和讀者一起來編寫第一段C語言程序,過程詳細到令人發指。

3.1.1 創建C語言源碼文件

  打開 Dev C++,在上方菜單欄中選擇“文件 --> 新建 --> 源代碼”,如圖3.1,

  

圖3.1  創建源代碼文件

 

3.1.2 輸入一段代碼

  用鍵盤輸入以下代碼,先輸入,等會再分析:

#include <stdio.h>  
void main()  
{  
    printf("hello,world");  
}  

圖3.2  輸入第一段代碼

 

 

3.1.3 文件保存

  保存到自定義的目錄下,給這個C語言程序的取名為helloworld.c,后綴為“c”,說明此文件就為C語言程序文件。

 

圖3.3  保存為后綴為c的文件

3.1.4 編譯運行

  點擊“運行 --> 編譯運行”,為什么要編譯運行呢,根據不同操作系統,比如windows的可執行文件后綴為"exe",所以編譯c語言文件為可執行的exe文件,這樣才能在windows下執行。

 

圖3.4  編譯運行代碼

 

3.1.5查看運行結果

  

圖3.5   執行結果

   可以發現,在保存helloworld.c的文件夾下面,多了一個helloworld.exe,這個就是編譯鏈接后生產的可執行文件,一般電腦要關閉殺毒軟件就能執行它了。

  下一節會簡明的說一下這段程序的意思。

 

3.2 初識C語言代碼

  本節主要講解上一節寫的五行C語言程序。

#include <stdio.h>  
void main()  
{  
    printf("hello,world");  
}  

  下面就針對代碼的每一行進行講解。

 

3.2.1 #,<>,(),{},"",;這些符號有什么用?

    首先我們得清楚一個概念,編譯器神通廣大!

  看到這么多符號,比如:#,<>,()......等等,先別緊張,它們都是給編譯器標識語句用的,這一小節先暫時不去考慮它們的意思,只要記住,編譯器有它識別的規范,這些都是規定好的,照做既可。

  注意:咱們中國人一般吧"#"念做井號,外國人應該把它念做Sharp,不管它怎么念,C語言要會寫會用即可,程序員一般話不多說,直接用代碼說事。

 

3.2.2 #include <stdio.h>

  C語言代碼需要用到C庫里面的功能的話,就需要申明頭文件,聲明頭文件的格式需要用到符號“#”,以及關鍵字include,然后把需要用到的頭文件放入<>符號中,比如本節用的<stdio.h>,就把頭文件stdio.h放入<>之中。

  新手肯定要開始困惑了,啥是C庫?啥是“聲明”?頭文件又是什么東東?為啥要用到"#"?那就由我來逐一解釋吧。

  注意:如果解釋的不夠詳細,請在下發評論,筆者會重新修改這方面的解釋的,謝謝。

  C庫與頭文件:C語言為了減輕程序員的工作量,提供了C庫。C庫里面有好多好多功能,好多好多文件。為了編譯速度快些,所以當程序員需要使用C庫的某些功能的時候,就需要添加相關頭文件來表明,不需要就不添加。比如我們用到的stdio.h這個頭文件吧,這個就是標准的C庫輸入輸出頭文件,相關功能下一小節詳細介紹。

  注意:讀者暫時可以這么理解,輸入就是接受鍵盤的輸入,輸出就是屏幕上輸出顯示

  聲明與#include:上述說過,當程序員需要使用C庫的某些功能的時候,就需要添加相關頭文件來表明,這個過程就是聲明,聲明頭文件用到標識符#,然后再用到關鍵字include,這些都是C語言代碼格式的規定,照着做就是了,以后代碼寫多了也就漸漸明白了。

  提示:可以知道include的直譯意思就是包含,包括

 

3.2.3 printf("hello world");

  上一小節說到stdio.h這個頭文件,是標准C庫的輸入輸出頭文件。我們已經聲明了這個頭文件,所以就可以使用頭文件里所有的功能,其中一個就是printf功能。

  注意:聲明頭文件辦法之前說過,這么做:#include <stdio.h>

  先直譯一下printf,print的意思就是打印,f的意思筆者認為是flow的縮寫,就是流,所以printf的意思就是打印流或者叫輸出流,最終輸出流輸出到顯示屏上顯示出來。

  注意:流好比高山流水的水流,計算機編程里面用流來表示要流過CPU的數據流,這里的輸出流就是要輸出到顯示屏的數據流。如果比較拗口可以多讀幾遍,實在抱歉。

 

圖3.6  數據流

  本節我們輸出到顯示屏上的文字是hello world,現在需要讀者打開Dev-C++,打開helloworld.c,把鼠標移動到printf中,按下鍵盤“Ctrl”,會發現鼠標顯示變成了手的形狀,點擊鼠標可以看到如下代碼:

int __cdecl printf(const char * __restrict__ _Format,...);

  看着似乎有點復雜呢,不急,本小節只需要知道printf的使用方法之一,輸出文本流即可,用法就是在printf后的括號里面,添加雙引號“”,再把需要輸出的文本流放入雙引號里面就行了,最后括號外面添加分號;即可:

printf("hello world");

  讀者可以自行修改需要輸出到顯示屏的文本流,看看效果體驗一下吧。

  

3.2.3 void main()與{}

  void是定義不需要返回值,為空的意思。

  main是主函數。

  ()的意思等同於庫函數printf的(),用來輸入參數用的。

  {}標識函數體的起始。   

  這里涉及的返回值,函數,參數等知識,讀者先不用考慮,后面章節會逐一解釋,目前讀者只需要死記住,每次寫程序套用這個格式即可:

void main()
{
    所有程序內容寫在{}里面
}

  程序寫在大括號{}里即可。

 

3.3 初識編程規范

  寫程序的時候,每個人的品味不同,寫出來的程序風格也會有區別,但是大體上要參照一定的格式,為的是能讓一般程序員看的舒服。比如聲明頭文件的時候,#include <stdio>,在include后面會加一個空格,再比如main函數的函數體內,printf語句前會添加四個空格,也就是一個TAB按鍵空出的空間。

  以后代碼寫多了再好好規范一下,目前只是初識。如果本節還有什么部分不清楚的,歡迎在評論區留言,謝謝。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM