目錄
一、什么是C語言?
代碼
程序分析
程序運行
一個工程中出現兩個及以上的main函數
代碼
運行結果
分析
數據各種類型
為什么會有這么多的數據類型?
計算機單位
各個數據類型的大小
注意事項
數據類型的使用
變量的分類
變量的使用
變量的作用域和生命周期
八、函數
九、數組
數組是什么呢...
第一個C語言程序
#include<stdio.h> int main() { printf("Hello world!\n"); return 0; }
- 對于C程序來說以后大家會經常見到像上面的框架,可以說這就是C程序的身體,一個C程序從main函數開始,結束于main函數。int main(){}是函數的整體,其中int main()稱為函數頭,一對{}中間部分就是主函數的具體實施部分,稱為函數體。注意:一個程序有且只能有一個main函數。
- #include<stdio.h>是預編譯處理命令中的文件包含命令。stdio.h文件被稱為“標準的輸入輸出頭文件”,在這個文件中定義了許多函數,如:printf、scanf等。有關文件包含命令,將在后面的文章給大家詳細講解
- printf(“Hello world!\n”);是一個函數調用語句。printf函數的定義過程存在于stdio.h文件中,其主要作業就是在顯示器上輸出字符串。其中\n為轉義字符,表示在此輸出一個換行符。
- return 0;語句表示將值0返回給調用函數main()函數的操作系統。
數據類型
分為兩類:1、內置數據類型 2、自定義數據類型
自定義數據類型在此不做解釋,大家僅需知道是由結構體、枚舉等定義的就足夠了,下面我來介紹以下內置數據類型:
1、char字符型 1個字節
2、int 整型 4個字節
3、short短整型 2個字節
4、long長整型 4個字節
5、float單精度浮點型 4個字節
6、double雙精度浮點型 8個字節
同過這些不同的數據類型可以針對性的定義變量,還有指針類型和空類型在這里不做介紹
變量
對于那些那些經常被改變的量用變量來描述,固定不變的量用常量來描述
- 如何定義變量
數據類型 變量名 如下:
注意:在C語言中變量名只能由字母、數字、下劃線組成,且第一個字符必須是字母或者下劃線,其有效長度不能超過32個字符
int a; char nihao; double ea;
- 變量的分類
變量分為局部變量和全局變量
#include<stdio.h> int a;//全局變量 int main() { int a;//局部變量 return 0; } //局部變量和全局變量名字可以相同,但不建議這樣。相同時局部優先
- 變量的作用域和生命周期
作用域:通俗來講這個變量在哪里可以使用,哪里就是他的作用域
1、局部變量的作用域:是局部變量所在的局部范
2、全局變量的作用域:整個工程任意地方。全局變量可以跨文件使用,在extern聲明后
生命周期:變量的生命周期指的是變量的創建到變量的銷毀之間的一個時間段
1、局部變量的生命周期是:進入作用域生命周期開始,出作用域生命周期結束。
2、全局變量的生命周期是:整個程序的生命周期。 (整個程序的生命周期和main函數的生命周期一樣)
常量
- C語言中的常量和變量的定義的形式有所差異。
- C語言中的常量分為以下以下幾種:
1、字面常量
#include<stdio.h> int main() { 4; 3.14;//常用來給變量賦值 return 0; }
2、const修飾的常變量
#include<stdio.h> int main() { //int a;可修改a的值 // const int a;這種寫法時a的值不能改變,此時a具有常屬性但他依然是一個變量 return 0; }
3、#define定義的標識符常量
#include<stdio.h> #define MAX 100 int main() { int a=MAX;//可以看成int a=100; }
4、枚舉常量
#include<stdio.h> enmu number { //下面三個就是枚舉常量 Fist,//值為0 Second,//值為1 Third//值為2 }; int main() { return 0; }
注釋
注釋有兩種風格:
1、 C語言風格的注釋 /xxxxxx/ 缺陷:不能嵌套注釋
2、C++風格的注釋 //xxxxxxxx 可以注釋一行也可以注釋多行
建議在寫代碼時加上代碼意思的注釋,養成良好的代碼習慣
字符串
"Helloworld"像這個由雙引號引起來的一竄字符稱為字符串字面值,或者簡稱字符串。
注意:字符串的結束標準是一個\0的轉義字符。在計算字符串長度的時候,\0是結束標準不算做字符串的內容。
#include<stdio.h> int main() { char a1[]="Hel";長度為3 char a2[]={'H','e','l','\0'};長度為3 char a2[]={'H','e','1'};沒有\0結束標準,以隨機值結尾 return 0; }
轉義字符
看字面意思就很好懂得轉義字符的意思,轉變原先字符的意思,在上文中看到的\n,就是一個轉義字符,表示打印一個換行,這樣的轉義字符還有很多,如下:
\? 在書寫連續多個問號時使用,防止他們被解析成三字母詞 \' 用于表示字符常量' \“ 用于表示一個字符串內部的雙引號 \\ 用于表示一個反斜杠,防止它被解釋為一個轉義序列符。 \a 警告字符,蜂鳴 \b 退格符 \f 進紙符 \n 換行 \r 回車 \t 水平制表符 \v 垂直制表符 \ddd ddd表示1~3個八進制的數字。 如: \130 X \xdd dd表示2個十六進制數字。 如: \x30 0
選擇語句
所謂選擇語句即條件成立則進入這部分語句,常見的選擇語句有if語句,if else語句,switch語句等等,這里僅簡單結束以下if語句,后面文章中會詳細介紹選擇語句的用法、語法、注意。關注我等待后面的文章更新。
#include<stdio.h> int main() { int a; scanf("%d",&a); if(a<0) a=100; printf("%d",a); return 0; }
上述代碼的意思為定義了整型變量a,輸入一個整數放到a里面,此時來到了if語句,如果輸入的整數小時0,則把100賦值給a,并將a的值輸出,看到這里大家能簡單明白選擇語句的意思了
循環語句
對于C語言的循環語句可以理解為在滿足一定的條件下,循環里的語句會重復執行,直至條件不滿足,如果一直滿足會形成死循環。常見的循環語句有for、while、do while語句,這里同選擇語句一樣不做過多介紹。
后記
函數、數組、操作符、常見關鍵字、#define定義常量和宏、指針和結構體等相關內容將初識C語言(2),請大家諒解,敬請關注!