c語言程式入口:main函式 -> main() -> 每乙個程式都必須有main函式。
main函式有什麼特點?
1)程式必須以main作為主函式的命名。
2)程式從main函式開始執行,從main函式結束。
3)程式不能從第乙個函式開始執行,而是從main函式開始。
4)main函式在程式中有且僅有乙個。
分析main函式基本框架?
main()
-> 函式頭:展現函式的名字
在linux中,所有函式都是乙個任務,每乙個任務都是應該有乙個返回值。1)返回值型別舉例子:返回值為int,是什麼意思?
無論這個函式是成功,還是失敗,都會返回乙個int型別的資料
2)返回值型別寫在**?
寫在函式頭的前面:
例子1:
intmain()
-> 這樣寫,就預設了乙個東西,就是main函式在返回,一定會返回乙個int型別的資料
例子2:
char
main()
標頭檔案
1)程式中一定要寫標頭檔案嗎?
不一定。如果在程式中沒有呼叫到任何的函式,則不需要新增標頭檔案,只有當程式中呼叫了函式,才需要新增對應的標頭檔案。
2)標頭檔案的作用是什麼?
對函式進行宣告,在函式呼叫前必須宣告函式(包含標頭檔案),否則編譯警告!
3)函式對應的標頭檔案是什麼?
例子: printf() -> 在ubuntu終端輸入: man 3 printf(按"q"退出) -> 得到相應的標頭檔案: #include
只要在程式中呼叫printf()函式,就必須包含這個標頭檔案。
#include
-> 裡面已經寫好了printf()函式的宣告
intmain()
linux在執行程式時,需要程式傳遞一些引數。
1)怎麼樣才能實現命令列傳遞引數?
int
main()
/int
main
(void
)-> main函式無法接收命令列給main函式傳遞的引數。
intmain
(int argc,
char
*ar**)
-> 代表main函式可以接收命令列給main函式傳遞的引數。
argc -> argument count 引數個數
ar** -> argument value 引數的值
2)使用命令列傳遞引數有什麼作用?
使用命令列傳遞引數,ar**陣列裡面的值每一次執行結果就會不一樣,並不需要每次都修改**。
注釋 -> 對**進行解析,需要新增對應注釋內容。單行注釋: // 注釋內容 -> 寫當行中文解析
多行注釋: / 注釋內容 / -> 遮蔽某些**
縮排與空行
縮排 -> 遇到復合語句,必須要進行縮排(tab鍵)。
空行 -> 模組與模組之間,最好使用空行來分開。
如何編譯?
編譯器:gcc
用法: gcc + 需要編譯檔案的路徑+檔案名字(例如: gcc test.c)
1)為什麼要編譯?
將c語言編譯二進位制檔案,才能在機器上執行。
2)編譯方式:
gcc test.c -> 預設在當前目錄下生成乙個a.out檔案。
gcc test.c -o test -> 指定新的二進位制檔案的名字叫test。 執行
./test -> 這裡不能省略"./"
./a.out
注意:a.out與test除了名字不一樣,其他都一樣。
c語言學習篇
c語言 編譯 執行c程式 include intmain 1.了解c語言結構 main 主函式,所有c語言程式都要包含主函式,從main 函式開始執行 include 是乙個預處理的命令,用來引入標頭檔案 stdio.h 是乙個標頭檔案 標準輸入輸出標頭檔案 printf 格式化輸出到螢幕。prin...
C語言學習 函式篇
函式需要前置,因為系統會預設主函式先執行。為什麼使用函式 避免重複性操作。提高程式可讀性,方便後期修改和完善。有利於程式的模組化。函式類似於乙個黑盒子,有時候不需要知道裡面你怎麼執行的,知道如何用就好了。函式形參用完之後記憶體空間會被釋放,void表示沒有返回值。函式是c語言的基本單位。什麼是函式 ...
C語言學習筆記之指標篇(二)
1.指標型別分析 分析指標,可以從變數名開始,根據運算子優先順序結合,一步一步分析.int p 這是乙個普通的整型變數 int p 首先從p處開始,先與 結合,所以說明p是乙個指標,然後再與int結合,說明指標所指向的內容的型別為int 型.所以 p是乙個指向整型資料的指標 int p 3 首先從p...