加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

C語(yǔ)言速查手冊(cè):數(shù)據(jù)類型(Data Types)

04/29 08:05
1568
閱讀需 4 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

數(shù)據(jù)類型就像盒子一樣存儲(chǔ)物體,數(shù)據(jù)的類型決定了數(shù)據(jù)的存儲(chǔ)大小。在C語(yǔ)言中,概括起來(lái)主要有如下四類數(shù)據(jù)類型:

基本數(shù)據(jù)類型(Basic types):主要是整數(shù)類型和浮點(diǎn)數(shù)類型。

枚舉數(shù)據(jù)類型(Enumerated types):主要是被定義成離散型的整數(shù)值。

空類型(Void types):表明沒(méi)有可用的值。

派生類型(Derived types):主要是指針類型、數(shù)據(jù)類型、結(jié)構(gòu)體類型、共用體類型和函數(shù)類型。

但是根據(jù)不同的系統(tǒng)位數(shù),數(shù)據(jù)存儲(chǔ)大小會(huì)存在一些區(qū)別,具體平臺(tái)可以參考下表:

如果要準(zhǔn)確得到某個(gè)平臺(tái)準(zhǔn)確的數(shù)據(jù)存儲(chǔ)大小,可以使用sizeof(type)獲取,具體參考下面的程序。

#include <stdio.h>

int main()
{
printf("data size : n");
printf("char: %dn", sizeof(char));
printf("short: %dn", sizeof(short));
printf("int: %dn", sizeof(int));
printf("unsigned int: %dn", sizeof(unsigned int));
printf("long: %dn", sizeof(long));
printf("unsigned long: %dn", sizeof(unsigned long));
printf("long long: %dn", sizeof(long long));
printf("float: %dn", sizeof(float));
printf("double: %dn", sizeof(double));
printf("char*: %dn", sizeof(char*));

return 0;
}

在C語(yǔ)言中我們還可以給標(biāo)準(zhǔn)的數(shù)據(jù)類型取個(gè)別名,這里可以使用typedef關(guān)鍵字來(lái)定義一個(gè)新的類型。typedef關(guān)鍵字使用規(guī)則如下:

typedef 原始數(shù)據(jù)類型名 新定義數(shù)據(jù)類型名

對(duì)于不同的整數(shù)類型可能大小不同,如果我們通過(guò)如下定義,就可以很直觀的知道相應(yīng)的類型大小,還有結(jié)構(gòu)體類型也常使用此關(guān)鍵字。

typedef int int32
typedef short int16

有兩點(diǎn)需要特別注意:

  • typedef可以聲明各種類型名,但不能用來(lái)定義變量;
  • typedef只是對(duì)已經(jīng)存在的類型增加一個(gè)類型名,而沒(méi)有創(chuàng)造新的類型;

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
KSZ9031RNXCC-TR 1 Microchip Technology Inc IC TXRX ETHERNET 48QFN

ECAD模型

下載ECAD模型
$2.81 查看
KSZ9031RNXCC 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER

ECAD模型

下載ECAD模型
$2.81 查看
TJA1051T/3/CM,118 1 NXP Semiconductors TJA1051 - High-speed CAN transceiver SOIC 8-Pin

ECAD模型

下載ECAD模型
$1.03 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜