国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

C語言之基本數(shù)據(jù)類型

2019-11-14 08:53:48
字體:
供稿:網(wǎng)友
C語言數(shù)據(jù)類型之基本類型C語言編程其中一個比較重要的地方是對數(shù)據(jù)的組織。我們通常會看到各種結(jié)構(gòu)體類型的數(shù)據(jù),就是對數(shù)據(jù)的一種組織方式。這樣將數(shù)據(jù)組織起來,有利于我們對數(shù)據(jù)的操作和管理。合理的數(shù)據(jù)結(jié)構(gòu),可以使我們的程序算法簡潔、有條理。今天,不講數(shù)據(jù)結(jié)構(gòu),而是講一下組成這些結(jié)構(gòu)體的基本數(shù)據(jù)。C語言中涉及到的基本數(shù)據(jù)類型并不多,共有以下幾種:char(字符型)、short(短整型)、int(整型)、long(長整型)float(單精度浮點型)、double(雙精度浮點型)。可以將這6種基本類型做一下歸類:字符值:char。用于表示字符,如'a','b','c','1','2','3'等等。整值:short、int、long。用于表示一個整數(shù),如0,1,3,5,56,582等等。浮點值:float、double。用于表示一個小數(shù),如1.2,1.32,4.563等等。也就說,在你的程序中,如有想用一個變量來表示字符的,那么就用char來進行聲明和定義,如果想用來表示整數(shù)的,就用short、int或者long來進行聲明和定義,如果想表示一個小數(shù),那么就使用float或者double來進行聲明和定義。如下:char c = 'a';int  i = 54;float f = 3.3;PS:以上為了便于理解,對這些變量進行了初始化。OK,上面只是對這些基本類型數(shù)據(jù)的一些簡單說明,下面再深入一下。對于整值來說,可以用short聲明,也可以用int聲明,也可以用long聲明,那么這三者有什么區(qū)別呢?對于浮點值來說,可以用float聲明,也可以用double聲明,這兩者又有什么區(qū)別呢?這就涉及到一個叫字節(jié)的東西。大家知道,計算機能夠識別的數(shù)據(jù)是二進制數(shù)據(jù),即只認識0或1,那么當我們定義并初始化一個整值變量時,計算機是怎么去進行識別的呢?前人總是很機智的,他們提出了一個叫進制轉(zhuǎn)換的概念,即可以將十進制(八進制等)數(shù)轉(zhuǎn)換為二進制(反之亦然)。那么當我們定義并且初始化一個變量時,該變量存儲到內(nèi)存中時,就會自動按照二進制的方式去存儲了。那在內(nèi)存中,一個0或者1稱為一個位,那么8個位就為一個字節(jié),這樣的話,一個字節(jié)(不考慮符號問題)最大可以表示255(2^8-1),最小可以表示0(具體可以看看二進制和十進制的轉(zhuǎn)換方法)。那么到這里,大家肯定疑問,一個字節(jié)最大才能表示255,那我的變量數(shù)值大于255怎么辦?那就再多加一個字節(jié)唄,這樣兩個自己最大就能表示65535(2^16-1)。如果還不夠,那么我就再加一個字節(jié),三個字節(jié)最大能表示2^24-1,以此類推。。。那么short、int、long的區(qū)別是什么呢?short類型的變量為兩個字節(jié),int類型的變量為4個字節(jié),long類型的變量為8個字節(jié)(皆針對32位系統(tǒng))。那到這里,就很明了了,這三者的區(qū)別就是能表示的數(shù)的最大值不一樣,如short最大只能表示65535,而int最大只能表示2^32-1,long最大只能表示2^64-1。這樣就看你的程序需求,根據(jù)變量的值范圍進行變量聲明。不過在變量值不大于4個字節(jié)的基礎(chǔ)上,一般都是用int進行聲明了。那float和double又有什么區(qū)別呢?double的精度比float高,double的有效位達到15位(有些系統(tǒng)是16位),比如可以表示3.12345678912345這么大精度的數(shù)值,而float的精度就只有6位(有些系統(tǒng)是7位),只能表示3.12345這么大精度的數(shù)值。類型    有效位        字節(jié)數(shù)****************************************float    6 – 7        4****************************************double    15 – 16    8****************************************類型    指數(shù)長度    尾數(shù)長度****************************************float    8 位        23 位****************************************double    11 位        52 位****************************************float和double在現(xiàn)有項目中用得比較少,暫時只做這些總結(jié),后續(xù)若項目中有用到,再進行總結(jié)。關(guān)于浮點值和二進制的轉(zhuǎn)換規(guī)則還有點迷糊。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 沙坪坝区| 大化| 原平市| 西畴县| 杭州市| 大化| 望都县| 响水县| 呼和浩特市| 新乡县| 苏尼特右旗| 南澳县| 中阳县| 江川县| 翁牛特旗| 古浪县| 建德市| 临桂县| 栾城县| 涡阳县| 垫江县| 丹棱县| 应城市| 东兰县| 靖安县| 呼玛县| 富裕县| 南靖县| 宁河县| 台中市| 蓝田县| 六枝特区| 萨迦县| 建湖县| 都江堰市| 乳山市| 永州市| 玉溪市| 湖南省| 玉林市| 开平市|