C語言入門(一)
--------------本人C#程式設計師,因為對c語言有濃厚的興趣,故自行研究,寫的不好之處可以評論告訴我,互相交流 。
C語言入門篇(一)
1.計算機的組成
計算機的組成分為硬體系統和軟體系統
(1)硬體系統:
主機:中央處理器,記憶體等 (備註:在此強調一下,計算機計算時需要從記憶體之中將資料放入快取,再從快取放入暫存器,此時快取已經不屬於記憶體的範疇,很多人誤認為快取是記憶體中的一部分是錯誤的理解,而為什麼快取比記憶體傳輸速度快而不能取代就是因為成本問題,就好比記憶體也不能完全取代硬碟)
外部裝置:輸出裝置(顯示器,印表機),輸入裝置(鍵盤滑鼠),外儲存器(固態硬碟,u盤)
(2)軟體系統:
系統軟體:作業系統,資料庫系統等
應用軟體:QQ等
2.程式和指令
借用很多教程的理論就是:
(1)指令是對計算機進行程式控制的最小單位
(2)所有指令的集合稱為計算機的指令系統
(3)程式是為完成特定任務而用某種語言編寫的一組指令序列
指令 = (操作碼)二進位制數碼+(運算元)二進位制數碼 操作碼:執行的動作 運算元:執行物件(地址)
3.什麼是C語言?
C語言就是人和計算機交流的一種語言,就像人和人說話一樣(說的一方傳遞資訊,聽的一方接收資訊),只是資訊傳遞時接收資訊的人不需要一定去執行,但計算機需要無條件服從。
C語言是面向過程的高階語言,其轉換為機器所能識別的機器語言(二進位制指令)是需要先轉換為組合語言,計算機中將組合語言轉換為機器語言的過程稱為編譯
6.C語言編譯過程分成四個步驟:
1,由.c檔案到.i檔案,這個過程叫預處理
2,由.i檔案到.s檔案,這個過程叫編譯
3,由.s檔案到.o檔案,這個過程叫彙編
4,由.o檔案到可執行檔案,這個過程叫連結
想深入可以看看編譯原理,筆者認為了解即可,問題不大
5.第一個C語言程式
此處直接使用VS寫程式,剛入門的看不懂沒關係,後續會講解為什麼要這樣做
(1)開啟Visual Studio -按圖走 --點確定後附加選項 選擇空專案 點選完成
開啟之後,右鍵原始檔
1 //新增引用
2 #include<stdio.h> 3 /* 4 Main函式是程式的入口,只有定義了Main函式,程式才知道該從哪裡開始 5 執行 6 */ 7 int main() 8 { 9 printf("Hello World!\n"); //printf 是輸出函式,幫助我們輸出內容的方法,\n不會照常輸出,
//因為\n在字串中代表換行的意思 10 getchar(); //程式執行完後 看不到結果 控制檯就會退出 ,加上這句話,實現控制檯不退出,更好的看到效果 11 return 0; 12 13 }
此處對程式碼做出解釋:
首先 #include <XX.h >的意思是包含XX.h標頭檔案 ,而標頭檔案其實就是我們後面寫程式碼可能需要的功能的實現,可以理解為標頭檔案裡面包含著很多的函式(方法),而每一個方法都是能實現某一個功能的,我們之所以引入 stdio.h 標頭檔案,是因為 printf 的方法實現在此標頭檔案中.
#include <XX.h> 與 #include "XX.h" 的區別 :
所有的#開頭的行,都代表預編譯指令,預編譯指令行結尾是沒有分號的
兩種引用都有用,區別是<> 系統直接按系統指定目錄檢索 ,“” 的話系統先在指定的路徑(沒寫路徑代表當前路徑)查詢標頭檔案,沒有再去系統指定的目錄檢索
{...} 稱為程式碼塊,一個程式碼塊裡面可以有多條語句,語句用 ; 結尾
註釋:不會被編譯器當成程式碼去編譯的 // 單行註釋 /**/ 多行註釋
OK,現在我們已經成功編寫了一個C語言的程式,讓我們點選 “本地 Windows 偵錯程式” 試一試吧
今天,你學會了嗎?