首页
/
每日頭條
/
科技
/
c語言的基本數據類型及取值範圍
c語言的基本數據類型及取值範圍
更新时间:2026-10-23 00:54:40

c語言的基本數據類型及取值範圍?前言我們學習C語言的時候在條件分支判斷if語句的時候總會涉及到很多的比較,判斷條件是否為真,很多時候我們是直接與0進行比較,今天我想講一下關于各種數據類型和0比較的的注意事項,我們的基本數據類型包括(int char bool float指針等變量),今天小編就來說說關于c語言的基本數據類型及取值範圍?下面更多詳細答案一起來看看吧!

c語言的基本數據類型及取值範圍(C語言中各種數據類型與)1

c語言的基本數據類型及取值範圍

前言

我們學習C語言的時候在條件分支判斷if語句的時候總會涉及到很多的比較,判斷條件是否為真,很多時候我們是直接與0進行比較,今天我想講一下關于各種數據類型和0比較的的注意事項,我們的基本數據類型包括(int char bool float指針等變量)。

一般我們用if語句判斷一個條件是真的還是假,我們直接使用if(var)或者if(!var)表示這是邏輯判斷真還是假,如果我們用if判斷一個數值如(short 、int 、long等),這時候我們就應該用if(var == 0)表示是與0進行數據值的判斷,對于指針來說,我們最好是使用if(var == NULL),最後值得注意的一點是我們的浮點型,因為我們的浮點型在存儲的時候受精度影響你并不知道它的值比如你 float a=1;它在内存中可能是 1.00000241,和我們系統的精度有關系,并不是一個精确的數。所以在比較或者是判斷我們浮點數的時候我們就需要把(==)、(!=)換成(>=)、(<=)的形式。

int類型數據和0比較

整型數據的比較是相對簡單不複雜的我們上面講到的确定數值的時候我們用(==)和(!=)例如:

if(a == 0)或者 if(a != 0)

不建議寫成:if(a)或者if(!a),因為你這樣寫會讓讀你代碼的人以為你的a是一個bool值。

在這裡想說一下我們代碼的規範和可讀性性問題,一般我們的符号和變量或者表達式之間有一個空格會讓你的代碼有更高的可讀性,當然如果不加影響也不是很大,看自己個人的編程習慣吧,我個人平時寫普通測試代碼的時候是不習慣加的但是,寫一些比較正式的代碼的時候還是會乖乖加上。

float類型與0比較

float類型。不管是單精度還是雙精度類型。由于在存儲的時候并不是具體的,會和存入的數據有偏差,在計算機當中,大多數浮點數據都是無法精确的去表達的。我們應該定義一個範圍然後使用(>=)、(<=)來判斷比如:

const float N=0.0001;

if( (a>=N) && (a<=N)

不建議寫成:

if(a == 0)或者 if(a != 0)

有時候你寫成下面的格式也沒什麼問題,但是你要記住的是浮點數的精度誤差,如果在系統精度很高的機器中你的代碼可能就存在判斷錯誤的情況了,所以我們還是盡可能養成一個良好的代碼編寫規範。

bool類型與0比較

建議寫成:if(a)或者 if(!a)

不推薦寫成下面的幾種形式:

1、if(a ==TRUE)

2、if(a == FALSE)

3、if(a == 1)

4、if(a == 0)

指針類型與0比較

指針類型建議是和NULL比較而不是0

建議寫成:

if(p == NULL) 或者 if(p != NULL)

不建議寫成:

if(p == 0) 或者if(p != 0),這樣會讓人誤解是整型變量。

if(p)或者if(!p),這樣的代碼可能會使讀者誤認為是bool 類型。

總結

在比較的代碼中需要注意的是我們很多剛剛編寫代碼的時候經常會把我們的“=”和“==”混淆起來,這也不奇怪,因為我們計算機中"="是賦值的意思,雙等号“==”才表示比較是否相等,我自己在剛剛接觸的時候是栽過跟頭的,經常把 if(c==0)寫成if(c=0),在這裡提示一下各位夥伴要注意哦。

Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
别克君威1.5T發動機怎麼樣
别克君威1.5T發動機怎麼樣
1、别克君威的發動機配置了LTG的渦輪增壓發動機和LFV渦輪增壓的發動機。LTG的渦輪增壓發動機最大馬力為261ps,最大功率為192kw;LFV渦輪增壓的發動機最大馬力為170ps,最大功率為125kw。2、别克君威1.5T的發動機是采用LFV渦輪增壓的發動機,配備了渦輪增壓器,其最大功率可以增加40%或更高。3、渦輪增壓器實際上是一種空氣壓縮機,通過壓縮空氣來增加進氣量。它是利用發動機排出的廢
2026-10-23
吉利缤越自動擋怎麼開
吉利缤越自動擋怎麼開
1、把擋位挂在P或N擋的時候啟動,大部分車同時需要腳踩刹車,因為這主要是為了防止意外而設置的程序,啟動後挂入D”擋加油前進就可以了。遇到紅綠等沒必要換擋,踩住刹車就行了要是需要停的時間要長一些,要把擋位放當P檔上。2、各種車型自動擋有一些差别,有的有M”擋,叫手動模式,有+-,分别代表升擋和降擋;有的有S”擋,叫運動模式,延遲升擋位,可以足夠的扭矩動力。有的有叫L”擋的,叫低速擋,這幾種模式無論是
2026-10-23
opporeno5跟opporeno5k的區别
opporeno5跟opporeno5k的區别
演示機型:OPPOReno5K&&OPPOReno5系統版本:ColorOS11處理器不同。OPPOReno5K采用了骁龍750G處理器,采用了兩個2.2GHz的A77大核,GPU方面,集成Adreno619。OPPOReno5采用了骁龍765G處理器,采用八核心架構,由一顆2.3GHz的A76大核心+一顆2.2GHz的A76中核心+六顆1.8GHz的A55小核心組成。OPPO手機使用小技巧:1、
2026-10-23
微信名片電話号碼怎麼設置
微信名片電話号碼怎麼設置
演示機型:Iphone12系統版本:ios14APP版本:微信8.0.0這是微信自動顯示的,自己沒辦法設置,但可以将号碼放在個人簡介裡面。若部分好友有手機号,是因為手機通訊錄中本身就有對方的手機号,基于查看方便,微信才會顯示。如果手機中沒對方手機号,微信也不會顯示手機号,這是基于保護隐私。微信:微信(WeChat)是騰訊公司于2011年1月21日推出的一個為智能終端提供即時通訊服務的免費應用程序,
2026-10-23
孩子如何正确接種疫苗錯過打疫苗時間怎麼辦
孩子如何正确接種疫苗錯過打疫苗時間怎麼辦
第一、保證在孩子健康情況下才能接種疫苗如果孩子此時患有感冒、咳嗽或者是一些胃腸類的疾病,都要提前詢問醫生,患有這些疾病的時候可不可以給孩子接種疫苗。有些疾病在患病期間接種疫苗,可能會直接造成病症加重,甚至會直接造成孩子死亡的危險。所以說在孩子接種疫苗的時候,一定要保證在孩子健康的情況下,萬不可拿孩子的健康與生命開玩笑。第二、打疫苗前做好洗一次澡如果孩子最近已經洗過澡,那麼就不用給孩子洗澡了,隻要把
2026-10-23
Copyright 2023-2026 - www.tftnews.com All Rights Reserved