<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言32個關鍵字可以分為這幾類

信盈達 ? 2021-12-31 15:28 ? 次閱讀
C語言是一種面向過程、抽象化的通用程序設計語言,廣泛應用于嵌入式底層和系統開發。

C語言關鍵字共有32個,根據用途,可分為四類:

第一類:變量數據類型關鍵字:14個

第二類:9條基本語句用到的關鍵字:12個

第三類:存儲類型關鍵字:5個

第四類:運算符關鍵字:1個

學技術,重在日拱一卒、一點一滴的積累。今天一起來分析C語言的32個關鍵字都有哪些,以及關鍵字的含義、用途。

以下內容,只代表個人觀點,不一定對,僅供參考,隨便看看。

36cc41c4-69c2-11ec-8d32-dac502259ad0.gif

C語言的32個關鍵字

C語言關鍵字總共有32個,根據關鍵字的用途,可分為四類:

第一類:變量數據類型關鍵字:14個

1.1 char 單字節整型數或字符型數據

1.2 short短整型數

1.3 int基本整型數

1.4 long長整型數

1.5 float單精度浮點型數

1.6 double雙精度浮點型數

1.7 signed有符號數

二進制數據的最高位為符號位,最高位是1為負數,最高位是0為正數。

1.8 unsigned無符號數數據

1.9 void無數據類型、空數據類型

1.10 volatile 該變量在程序執行中可被隱含的改變

1.11 typedef 重新進行數據類型定義

1.12 struct 結構類型數據

1.13 enum 枚舉類型數據

1.14 union 聯合類型數據

第二類:9條基本語句用到的關鍵字:12個

2.1 if ,構成選擇語句

2.2 else,構成選擇語句

2.3 witch,構成選擇語句

2.4 case,構成選擇語句

2.5 break,跳出最內層循環

2.6 default,構成選擇語句

2.7 for,構成循環語句

2.8 do,構成循環語句

2.9 while,構成循環語句

2.10 continue,轉向下一次循環

2.11 goto,無條件轉移語句

2.12 return,函數返回

第三類:存儲類型關鍵字:5個

3.1 const 在程序執行過程中不可更改的常量值

3.2 extern 在其它程序模塊中說明了的全局變量

3.3 static 靜態變量

3.4 register使用CPU內部寄存器的變量

3.5 auto 用以說明局部變量,缺省值為此類型變量

第四類:運算符關鍵字:1個

4.1 sizeof 運算符,計算表達式或數據類型占用的,內存的字節數。

372ca974-69c2-11ec-8d32-dac502259ad0.gifC語言32個關鍵字的用法

C語言關鍵字總共有32個,其中第一類:變量數據類型關鍵字14個,會在后續C語言學習文章中講解。

第二類:9條基本語句用到的關鍵字:12個已經在@老牛經濟學 NJS2 淺談C語言入門中分析過。

下面重點分析以下兩類關鍵字的用法。

第三類:存儲類型關鍵字:5個

3.1 const 在程序執行過程中不可更改的常量值

C語言程序范例:

charx=9;

const int a=1000;

const char *sp=&a;

char*const ss=&a;

const char *const sz=&a;

程序分析:

第一行代碼:定義x為字符型變量,并賦值為9,后面x變量的值可以被改變。

第二行代碼:定義a為整型變量,賦值為1000,且值不能被改變。

第三行代碼:定義sp為字符型指針,且sp指針指向的地址里面的數不能被改變。

第四行代碼:定義ss為字符型指針,指針的值,也就是指針指向的地址&a不能被改變,但指針指向地址里面的變量a可被改變。

第五行代碼:定義sz為字符型指針,指針的值,也就是指針指向的地址&a不能改變,并且指針指向地址里面的變量a也不能被改變。

3.2 extern 在其它程序模塊中說明了的全局變量

extern 關鍵字在C語言的一個工程中,有多個.c文件,這些.c文件中如果需要共用相同的變量,可以將該變量定義為extern變量。另外需要注意該變量的作用域。

3.3 static 靜態變量

static關鍵字定義該變量為靜態變量。

如果定義為全局變量的靜態變量,則和全局變量完全相同,只是靜態全局變量只能在該.c文件中使用。而全局變量在同一個工程文件中可以被多個.c文件使用。

如果定義為局部靜態變量,作用域和局部變量完全相同。并且該局部變量占用的內存不會被優化,會一直存在。

定義為局部靜態變量,沒有賦值,默認為0。

3.4 register使用CPU內部寄存器的變量

register表示該變量存儲在cpu的寄存器中,編譯程序相應的變量將被頻繁的使用,一般該變量可以加快存儲的速度。

3.5 auto 用以說明局部變量,缺省值為此類型變量

auto char a;和char a;這兩條賦值語句的含義完全相同。

第四類:運算符關鍵字:1個

4.1 sizeof 運算符,計算表達式或數據類型占用的,內存的字節數。

C語言程序范例:

unsigned char a,m,n,x,y,z;

unsigned int b;

unsigned char niu[10];

unsigned char*sp;

m=sizeof(a);

n=sizeof(b);

x=sizeof(niu);

y=sizeof(sp);

z=sizoef(*sp);

程序分析:

第一行代碼:定義a,m,n,x,y五個變量為無符號字符型變量,這些變量在內存中各占用1個字節,它們的取值范圍為0-255。

第二行代碼:定義b變量為無符號整型變量,該變量在內存中占用4個字節。

第三行代碼:定義niu為數組變量,該數組長度為10。

第四行代碼:定義sp為指針變量,該指針指向的內存空間,存放的數為字符型變量。

程序運行結果:

m=1。

n=4。

x=10。

y=4。//sizoef(sp)表示sp指針占用內存空間大小。C語言中不論是那種類型的指針,均默認占4個字節內存。

z=1。//sizoef(*sp)表示sp指針指向地址里面的數,占用的內存大小。

C語言的關鍵字,需要在編程中,有意識的去訓練和實踐,才能達到熟練應用的目標。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7548

    瀏覽量

    131348
收藏 人收藏

    評論

    相關推薦

    光伏儲能系統有哪幾類?

    光伏儲能系統根據其應用場景和功能需求可以分為幾類,每一類都有其特定的用途和特點。
    的頭像 發表于 04-22 17:02 ?243次閱讀

    關鍵字搜索文件夾中某個TXT文件

    文件夾中隨時創造TXT文件,如何及時選出剛創造的文件?或關鍵字搜索出需要的TXT文件?
    發表于 02-06 15:22

    在NVM和本地\"內存中定義數組(靜態 /global /local)的\"關鍵字是什么?

    在 NVM 和本地\"內存中定義數組(靜態 /global /local)的\"關鍵字是什么? 還有與 32 位對齊的關鍵字怎么樣。
    發表于 01-25 07:52

    static關鍵字的三種用法

    在C語言中,關鍵字"static"可以用于不同的上下文,具有不同的作用。以下是"static"在C語言中的主要作用:1.靜態
    的頭像 發表于 11-10 08:00 ?287次閱讀
    static<b class='flag-5'>關鍵字</b>的三種用法

    IAR能否在整個工程中搜索關鍵字?

    像mdk可以在整個工程中搜索關鍵字 IAR應該也有類似的功能吧,但是我貌似沒有找到
    發表于 11-08 07:21

    指向code區數組的指針需不需要加code關鍵字的聲明?

    指向code區數組的指針需不需要加code 關鍵字的聲明?
    發表于 11-02 06:16

    在嵌入式中定義變量時volatile關鍵字的作用是什么?

    在嵌入式中定義變量時volatile關鍵字的作用?
    發表于 10-24 07:50

    程序中變量加volatile關鍵字是做什么用途的?

    為什么變量定義要加上這個關鍵字
    發表于 10-13 07:15

    this關鍵字在Java中的用法

    this 關鍵字只能在方法內部使用,表示對“調用方法的那個對象”的引用。 其實簡單來說 this 關鍵字就是表示當前對象,下面我們來具體介紹 this 關鍵字在Java中的用法。 1、調用成員變量
    的頭像 發表于 10-10 16:49 ?354次閱讀
    this<b class='flag-5'>關鍵字</b>在Java中的用法

    如何使用機器學習在M480上執行關鍵字識別

    應用程序: 本樣本代碼使用機器學習來在 M480 上執行關鍵字識別。 BSP 版本: M480系列 BSP CMSIS V3.04.000 硬件: NuMaker-PFM-M487 VER 3.0
    發表于 08-29 06:46

    淺析C語言中的regiseter關鍵字

    C語言中重要的關鍵字有很多,static const extern我們之前都講過,還有一個在面試中出現的頻率也比較高:register。
    的頭像 發表于 08-25 17:10 ?870次閱讀
    淺析C<b class='flag-5'>語言</b>中的regiseter<b class='flag-5'>關鍵字</b>

    使用機器學習在M480上執行關鍵字識別

    應用程序: 本樣本代碼使用機器學習來在 M480 上執行關鍵字識別。 BSP 版本: M480系列 BSP CMSIS V3.04.000 硬件: NuMaker-PFM-M487 VER 3.0
    發表于 08-22 08:02

    機器學習可以分為幾類?機器學習技術有哪些?

    機器學習可以分為幾類?機器學習技術有哪些 機器學習(Machine Learning,ML)是一種通過自動化自我學習所增強的能力,從數據中獲取知識的方法。可以說,機器學習是在人工智能
    的頭像 發表于 08-17 16:11 ?4641次閱讀

    C語言面試最常問的關鍵字

    大家好,我是嵌入式老林,從事嵌入式軟件開發多年,今天分享的內容是C語言面試最常問的三個關鍵字,希望能對你有所幫助。
    發表于 07-11 12:41 ?220次閱讀

    C語言關鍵字const的幾種用法

    本期來講解一個C語言關鍵字——const。
    發表于 06-21 11:05 ?1105次閱讀
    C<b class='flag-5'>語言</b><b class='flag-5'>關鍵字</b>const的幾種用法
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>