《C 語言入門經典》一2 2 資料型別

2021-09-23 09:04:26 字數 1767 閱讀 5889

c++語言中常用的資料型別有數值型別、字元型別、陣列型別、布林型別、列舉型別、結

構體型別、共用體型別、指標型別、引用型別和自定義型別。本節將詳細介紹這些資料型別。

在c++語言中,數值型別主要分為整型和實型(浮點型別)兩類。其中,整型按符號劃分

可以分為有符號型和無符號型兩類;按長度劃分可以分為普通整型、短整型和長整型三類,整

型的分類如表2.2所示。

在程式中使用實型資料時需要注意以下兩點。

(1)實數的相加

實型資料的有效數字是有限制的,如單精度float的有效數字是6~7位,如果將數字

86 041 238.78 賦值給float型別,顯示的數字可能是86 041 240.00,個位數8被四捨五入,小數

位被忽略。如果將86 041 238.78與5相加,輸出的結果為86 041 245.00,而不是86 041 243.78。

(2)實數與零的比較

在開發程式的過程中,經常會進行兩個實數的比較,此時盡量不要使用「==」或「!=」

運算子,而應使用「>=」或「<=」之類的運算子,否則可能產生未知的錯誤。例如:

float fvar = 0.00001; 

if (fvar == 0.0)

上述**並不是高質量的**,如果程式要求的精度非常高,就可能產生未知的結果。通

常,在比較實數時需要定義實數的精度。

【例2.1】 利用實數精度進行實數比較。

例項位置:光碟mr原始碼第2章2.1

#include "stdafx.h" 

void main()

程式執行結果如圖2.1所示。

在c++語言中,字元資料使用「' '」表示,如'a'、'b'、'c'等。定義字元變數時可以使用

char關鍵字。例如:

char c= 'a'; 

char ch = 'b';

在計算機中,字元是以ascii碼的形式儲存的,因此可以直接將整數賦值給字元變數。

例如:

char ch = 97; 

printf("%c\n",ch);

輸出結果為a,因為97對應的ascii碼為a。

在邏輯判斷中,結果只有真和假兩個值。c++ 語言中提供了布林型別bool 來描述真和假。

bool型別共有兩個取值,分別為true和false,true表示真,false表示假。在程式中,bool型別被

作為整數型別對待,false表示0,true表示1。將bool型別賦值給整型是合法的,同樣,將整型

賦值給bool型別也是合法的。例如:

bool ret; 

int var = 3;

ret = var; // ret=true

var = ret; // var=1

說明

引用型別資料與指標型別資料將在第5章進行講解,自定義型別資料(即類和結構

體)則會在第7、8、10章進行講解。

《樂在C語言》一2 2 資料型別

樂在c語言 定義乙個變數需給予資料型別。資料型別的用意在於分配適量的記憶體給變數,因為變數一定要放在記憶體才能執行。一般,常用的資料型別有整型 integer 和浮點型 floating point 沒有小數點的數叫整型 而有小數點的數,稱之為浮點型。如123是整型,而123.45 則是浮點型。c程...

C語言入門 資料型別

免費 整數 char short int long longlong 浮點型 float double long double 邏輯 bool 指標自定義型別 型別有何不同 型別名稱 int long double 輸入輸出的格式化 d ld lf 所表達的數的範圍 char記憶體所佔的大小 1個位...

C語言入門 資料型別

整數 char short int long longlong 浮點型 float double long double 邏輯 bool 指標自定義型別 型別有何不同 型別名稱 int long double 輸入輸出的格式化 d ld lf 所表達的數的範圍 char記憶體所佔的大小 1個位元組到...