C語言基礎之類型系統

來源:互聯網
上載者:User

標籤:無符號   order   style   用兩個   基本類型   定義變數   符號   hit   數組   

一、類型系統介紹

    類型系統是每個程式設計語言都會有的基本概念,C語言的類型系統可以概括為基本類型和複合類型,基本類型又可以細分為整型數實值型別和浮點數數實值型別,不同類型所佔用的記憶體長度不相同,下面先來介紹一下基本類型。

整型數值基本類型

1、char  佔用一個位元組

2、short 佔用兩個位元組

3、int 目前基本都是4位元組

4、long int (可以簡寫為 long) (32位系統是4位元組,64位系統是8位元組)

5、long long int ( 可以簡寫為long long) 佔用8節字

浮點數數值基本類型 

1、float 佔用4位元組 (單精確度)

2、double 佔用8節字 (雙精確度浮點數)

複合類型包含如下幾種

1、struct 結構體

2、union 聯合體

3、enum 枚舉 (長度等同 int )

4、數組

5、指標

二、有符號和無符號

    在定義變數時預設是有符號類型,需要定義無符號變數時只需要使用關鍵字 unsigned 來修飾即可,如 unsigned char、unsigned short、unsigned int等都是合法的變數,需要特別注意的是浮點數數實值型別不能用關鍵字 unsigned 來修飾,如 unsigned float和unsigned double 都是不合法的,因為浮點數類型的儲存方式和整型數實值型別不同。


    有符號變數的二進位最高一位用來表示符號位,正數是0負數是1剩下的用來表示值 ,無符號變數的所有二進位位都用來表示值,整型數值變數的值在電腦內部使用補碼來表示。

三、原碼、反碼和補碼

    原碼是值的二進位表示方式,舉例說明

            char v = 1   原碼=0000 0001   最高位是0

            char v = -1  原碼 = 1000 0001  最高位是1

    正數的原碼=反碼=補碼

    負數的反碼等於原碼除了符號位之外所有的位都取反,補碼等於反碼加一,舉例說明

            char v = -1 原碼 = 1000 0001, 反碼 = 1111 1110, 補碼 = 1111 1110 + 1 = 1111 1111


C語言基礎之類型系統

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.