--啥是關鍵字呢
這圖里的程序就是大家C語言考試里的考試重點:冒泡法。 拿來舉個例子(整篇文章都拿這里的代碼舉例子)
每行前邊標注的數字是為了方便大家查找行數:
0. #include“stdio.h” 1. void main(void) 2. { 3. int i,j,t,a[10]; 4. printf("imput 10 numbers:"); 5. for(i=0;i<10;i++) 6. scanf("%d",&a[i]); 7. for(i=0;i<10;i++) 8. for(j=0;j<10;j++) 9. if(a[j]<a[j+1]) 10. { 11. t=a[j]; 12. a[j]=a[j+1]; 13. a[j+1]=t; 14. } 15. printf("\nthe result is :\n"); 16. for(j=0;j<10;j++) 17. printf("%d ",a[j]); 18. } 比如說里邊的紅色的字:void、int、for都是關鍵字。(里邊的藍色的字:+、=、<都是運算符。后面幾周會講到)
自己對關鍵字的理解,跟大家說說:
第一個方面:關鍵字是C語言本身語法認可的標準字(或者換句話說是C語言提供給大家使用的標準字),而且每個關鍵字的功能的已經規定好,不能更改。 第二個方面:關鍵字就是已被C語言本身使用,不能作其它用途使用的字。
--C語言的關鍵字總結
首先給大家整理整理關鍵字的相關內容,雖然基本每本書都肯定會介紹,但多數都沒整理總結,每個章節跳出來幾個,很亂。從整體上整理總結一下可以幫助大家更好的理解C語言關鍵字的組成和作用。 C語言里共有32個關鍵字,這對于一門高級編程語言來說已經很少了,而且還有的關鍵字已經過時,所以使用的很少。 其中: 數據類型的關鍵字有12個 (char、double、enum、float、int、long、short、signed、struct、union、unsigned、void) 控制類型的關鍵字有12個 (break、case、continue、defaut、do、else、for、goto、if、return、switch、while) 儲存類型的關鍵字有4個 (auto、register、static、extern) 其他類型的關鍵字有4個 (const、sizef、typedef、olatile)
--如何聲明我們常用的各種變量
數據類型關鍵字是主要的作用就是聲明變量,如例子中第三行: int i,j,t,a[10];
----int型
int是語言的關鍵字,代表C中最基本的一個數據類型--整數。順便說一下,整數的英文單詞是integer,從而得到int。
主要透漏了兩個消息:
1.在函數中我已經聲明標識符i,j,t,a[10]。表示聲明了一個名字叫i的變量、一個名字叫j的變量、一個名字叫t的變量和一個叫a[10]的數組。 2.這個名字叫i的變量、名字叫j的變量、名字叫t的變量和叫a[10]的數組。它們的是整數,就是沒有小數點或小數部分。 聲明完這些整數型的變量,就能對他們賦值。比如例子中i=0,注意這里的“=”不是我們學的數學里的等號“等號含義:左邊等于右邊”,而C語言中的“=”是賦值運算符,表示“將右邊的值賦予給左邊”。 聲明的形式:
舉例: int i,j,t,a[10]; 也可以這樣分別進行聲明, 舉例: int i; int j; int t; int a[10]; 賦值的形式: 舉例: int i; i=0; 也可以在聲明時直接進行賦值 舉例: int i=0; 聲明的形式和賦值的形式在聲明和賦值浮點變量(float)和字符變量(char)也是適用的。 ----賦值后硬件如何儲存
如果咱們運行了下面的兩個語句: int i; i=7; 咱們的意思是聲明了一個整數型的變量i,讓i的值為7。 那嵌入式系統(或計算機)收到命令是如何執行的呢,這里先跟大家明確幾個簡單的概念: 位:最小的儲存單位稱為位(bit),可以容納兩個值(0或1)之一。就好像一個開關的開和關的兩種狀態。大家都說電腦是二進制的世界、是由0和1組成的,總是非黑即白。 字節:(byte)是常用的計算機儲存單位。幾乎所有的機器,1個字節都是8位。由于每個位都是0或1,所以一個8位的字節包含256(2的8次方)種可能的0、1組合。 字:對于一種給定的硬件設計,字(word)是自然的儲存單位,對于8位機,一個字就是正好8位。16位機一個字就是16位,以此類推32位、64位。 舉例: 比如整數7用8位的字節儲存 則為:00000111為二進制數。 
用途:整數型的變量是每個程序都離不開的吧。舉個最簡單的例子,單片機流水燈實驗(堪稱學習單片機的"hello Word! ")里控制一個燈亮多久的延遲函數里的時間參數變量就是整數型。 ----float型
光有整數自然也是不夠的,還要有小數啊。咱們在紙上寫個整數和寫個小數沒什么區別,只是找個地方加個小數點就OK了,但計算機干起這件事可就大不相同了。比如說你付給了浮點型變量 float i;
i=3.1415926; 計算機會怎么儲存呢(圖為十進制版本示意圖): 
硬件會用科學計數法的形式將小數進行儲存,但儲存畢竟是電腦的事,我們可以不管他。 聲明和賦值浮點型變量: 例子1: float i;
i=3.1415926;//i=3.1415926 例子2: float i=1.12e2;//1.12e2采用了科學計數法1.12乘以10的2次方 例子3: float i=1.12e-5; //1.12e-5采用了科學計數法1.12乘以10的-5次方 ----char型
char類型的用于存儲字母和標點符號之類的字符。但是在技術實現上char卻是整數類型,這是因為char類型實際儲存的是整數而不是字符。
char i;//聲明了一個char變量
i=‘C’;//把字符賦給變量時只能用單引號‘ ’ 計算機會把字符按照ASCII碼的形式儲存儲存呢: 
01000011就是67,如果在ASCII表上查詢,第67號就是大寫字母C。 char通常定義為使用8位內存單元,這和它儲存的數據時有關的。因為char儲存的實際是ASCII碼的編號,ASCII碼的編號是0-127,只要7位就能儲存的下。所以給了8位那是綽綽有余。 聲明和賦值字符型變量: char i;//聲明了一個char變量 i=‘C’;//正確 i=C;//不正確,會把C當變量。 i=“C”;//不正確,把“C”當成一個字符穿。 用途:字符型的變量是很常用的,因為表達肯定有時要用到字母的啊。舉個最簡單的例子,單片串口通信實驗(堪稱學習單片機的"調試必備實驗")里想電腦打印選擇結果Y或N,打印的變量就是是字符型。
----unsigned和signed關鍵字
每個簡單的數據類型都可以是有符號數(signed)或無符號數(unsigned),用unsigned和signed這兩個關鍵字來進行修飾。 
常用的三種數據類型(整數型int 浮點型float 字符型char)就介紹完了。呃,變量的類型就寫了這么多。下周的小文章還是寫關鍵字的--關于常用控制語句的。
以下是本系列教程文章列表:歡迎大家踴躍討論,有問題可在51黑論壇回帖提出.
C語言基礎教程(1):http://www.zg4o1577.cn/bbs/dpj-41177-1.html C語言教程(2)-關鍵字 變量:http://www.zg4o1577.cn/bbs/dpj-41178-1.html C語言教程(3)-控制語句:http://www.zg4o1577.cn/bbs/dpj-41179-1.html C語言教程(4)-運算符:http://www.zg4o1577.cn/bbs/dpj-41180-1.html C語言教程(5)-函數:http://www.zg4o1577.cn/bbs/dpj-41181-1.html C語言教程(6)-數組與函數指針:http://www.zg4o1577.cn/bbs/dpj-41182-1.html
51單片機教程:http://www.zg4o1577.cn/bbs/mcu-xuexi-1.html STM32教程:http://www.zg4o1577.cn/bbs/dpj-41167-1.html
|