二維碼
        企資網

        掃一掃關注

        當前位置: 首頁 » 企業資訊 » 熱點 » 正文

        C_從關鍵字的分類理解C語言的核心思想

        放大字體  縮小字體 發布日期:2022-02-02 17:37:23    作者:百里連喜    瀏覽次數:45
        導讀

        C語言(C89)32個關鍵字大體可以分類兩類:1 C89與類型相關得20個關鍵字C做為強類型語言,類型要顯式聲明并在編譯器做檢查。2 C89與控制結構相關得12個關鍵字控制結構實現算法,算法用函數呈現,由函數實現模塊化。3

        C語言(C89)32個關鍵字大體可以分類兩類:

        1 C89與類型相關得20個關鍵字

        C做為強類型語言,類型要顯式聲明并在編譯器做檢查。

        2 C89與控制結構相關得12個關鍵字

        控制結構實現算法,算法用函數呈現,由函數實現模塊化。

        3 C99、C11新增關鍵字

        keyword

        Through marco used as

        defined in

        restrict (since C11)

        指針變量修飾

        inline (since C11)

        內聯函數

        _Alignas (since C11)

        alignas

        stdalign.h

        _Alignof (since C11)

        alignof

        stdalign.h

        _Atomic (since C11)

        atomic_bool,atomic_int,…

        stdatomic.h

        _Bool (since C99)

        bool

        stdbool.h

        _Complex (since C99)

        complex

        complex.h

        _Generic (since C11)

        (no macro)

        _Imaginary (since C99)

        imaginary

        complex.h

        _Noreturn (since C11)

        noreturn

        stdnoreturn.h

        _Static_assert (since C11)

        static_assert

        assert.h

        _Thread_local (since C11)

        thread_local

        threads.h

        在C99中,新增了_Bool(關鍵字)數據類型,在stdbool.h頭文件,宏定義bool為-Bool:

        #define bool _Bool #define true 1 #define false 0 4 C++新增關鍵字

        C++新增得關鍵字主要有與類相關得10個關鍵字,與數據類型相關(包括類型轉換)相關得20個關鍵字,與異常處理相關得5個關鍵字,與內存管理相關得4個關鍵字。

        sn

        C++

        classify

        remark

        1

        class

        類相關

        2

        explicit

        類相關

        3

        friend

        類相關

        4

        mutable

        類相關

        5

        operator

        類相關

        6

        private

        類相關

        7

        protected

        類相關

        8

        public

        類相關

        9

        this

        類相關

        10

        virtual

        類相關

        11

        bool

        類型相關

        12

        char8_t (since C++20)

        類型相關

        13

        char16_t (since C++11)

        類型相關

        14

        char32_t (since C++11)

        類型相關

        15

        consteval (since C++20)

        類型相關

        16

        constexpr (since C++11)

        類型相關

        17

        decltype (since C++11)

        類型相關

        18

        dynamic_cast

        類型相關

        19

        FALSE

        類型相關

        20

        namespace

        類型相關

        21

        nullptr (since C++11)

        類型相關

        22

        reinterpret_cast

        類型相關

        23

        static_cast

        類型相關

        24

        template

        類型相關

        25

        TRUE

        類型相關

        26

        typeid

        類型相關

        27

        typename

        類型相關

        28

        using

        類型相關

        29

        wchar_t

        類型相關

        30

        const_cast

        類型相關

        31

        alignas (since C++11)

        內存相關

        內存對齊

        32

        alignof (since C++11)

        內存相關

        內存對齊

        33

        delete

        內存相關

        34

        new

        內存相關

        35

        catch

        異常處理

        36

        noexcept (since C++11)

        異常處理

        37

        static_assert (since C++11)

        異常處理

        38

        throw

        異常處理

        39

        try

        異常處理

        40

        concept (since C++20)

        模板實參約束

        41

        requires (since C++20)

        模板實參約束

        42

        export

        模板引用

        43

        asm

        使用匯編

        44

        thread_local (since C++11)

        線程相關

        45

        co_await (since C++20)

        協程相關

        46

        co_return (since C++20)

        協程相關

        47

        co_yield (since C++20)

        協程相關

        48

        and

         &&

        運算符替代寫法

        49

        and_eq

        &=

        運算符替代寫法

        50

        bitand

        &

        運算符替代寫法

        51

        bitor

        |

        運算符替代寫法

        52

        compl

        ~

        運算符替代寫法

        53

        not

         !

        運算符替代寫法

        54

        not_eq

         !=

        運算符替代寫法

        55

        or

         ||

        運算符替代寫法

        56

        or_eq

        |=

        運算符替代寫法

        57

        xor

         ^

        運算符替代寫法

        58

        xor_eq

         ^=

        運算符替代寫法

        綜上,數據類型系統與控制結構是C語言得核心。

        控制結構實現算法,數據類型系統構造數據結構。

        數據類型得三個方面:

        ① 值域和內存空間需求(sizeof);

        ② 類型編碼和譯碼規則(如字符得ASCII碼,整型得補碼,浮點型得階碼、尾碼等,使用編碼規則編出相關類型數據得限長得二進制序列表示,及對限長得二進制序列按照相關類型數據得編碼規則解釋出特定類型得數據);

        ③ 一個操作集(operations);

        運算符就是對特定數據類型操作得定義,如算術、比較、邏輯運算符等。

        5 總結一下

        編程語言得核心思想:抽象、分類、分治、模塊化。抽象出事物得本質數據,進行分類,利用分治思想抽象出函數,實現模塊化。

        人類面對大自然這個復雜系統,如何認識它?分科而治,分類研究,雖是無奈之舉,但卻行之有效。

        相應得,計算機科學和編程語言也是如此,如上所述得C得數據類型系統,三類控制結構,以及C++得類類型和泛型。

        編程語言也和人類語言一樣,都是用來描述名詞、形容詞、動詞得。編程語言得數據類型系統可以用來描述名詞、形容詞,控制結構和函數可以用來描述由動詞描述得功能。更進一步,動詞和形容詞得主體自然是名詞,分類抽象成類,也就是面向對象編程范式得C++了。

        ref

        en.cppreference/w/

        -End-

         
        (文/百里連喜)
        免責聲明
        本文僅代表作發布者:百里連喜個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
         

        Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

        粵ICP備16078936號

        微信

        關注
        微信

        微信二維碼

        WAP二維碼

        客服

        聯系
        客服

        聯系客服:

        在線QQ: 303377504

        客服電話: 020-82301567

        E_mail郵箱: weilaitui@qq.com

        微信公眾號: weishitui

        客服001 客服002 客服003

        工作時間:

        周一至周五: 09:00 - 18:00

        反饋

        用戶
        反饋

        主站蜘蛛池模板: 亚洲熟妇av一区| 天天看高清无码一区二区三区| 天天看高清无码一区二区三区 | 超清无码一区二区三区| 日韩一区二区超清视频| 国产一区二区福利| 日韩AV在线不卡一区二区三区| 精品少妇人妻AV一区二区三区 | 精品亚洲AV无码一区二区三区| 97精品国产福利一区二区三区| 国产成人一区二区三区电影网站 | 91久久精品无码一区二区毛片| 国产精品福利区一区二区三区四区| 四虎在线观看一区二区 | 一区二区在线视频免费观看| 无码中文人妻在线一区| 亚洲一区中文字幕在线电影网| 日韩精品无码视频一区二区蜜桃 | 日韩毛片基地一区二区三区| 亚洲线精品一区二区三区| 国产激情一区二区三区成人91| 精品免费国产一区二区| 国产一区二区三区乱码在线观看| 国产精品合集一区二区三区| 人妻av无码一区二区三区| 鲁丝片一区二区三区免费| 肥臀熟女一区二区三区| 爆乳熟妇一区二区三区| jizz免费一区二区三区| 蜜芽亚洲av无码一区二区三区| 国产对白精品刺激一区二区| 久久综合亚洲色一区二区三区| 久久久老熟女一区二区三区| 久久精品午夜一区二区福利| 少妇激情一区二区三区视频| 亚洲狠狠久久综合一区77777| 亚洲一区二区三区日本久久九| 日韩精品无码一区二区三区不卡 | 人妻少妇AV无码一区二区| 岛国无码av不卡一区二区| 亚洲综合色自拍一区|