整型和浮点型的区别_C的基础内容:常量之数值型常量,适合新手的学习
常量,接觸這一個(gè)內(nèi)容你得先知道它是什么?
常量就是它的值在程序運(yùn)行的過(guò)程中不可以改變的數(shù)值。比如說(shuō)你的身份證號(hào)就是一個(gè)常量,因?yàn)樗荒芨牧税?#xff0c;常量就是不能更改的,你就可以這么理解,想到常量就知道他要貫穿始終。
知道常量是什么東西了,那么我給發(fā)分成下面這幾類,畢竟“一鍋燴”你也頭疼不是:
1、 數(shù)值型常量
2、 字符型常量
3、 符號(hào)常量
化整為零,一分為三,現(xiàn)在我們對(duì)第一個(gè)數(shù)值型常量來(lái)進(jìn)行共同研究,還希望我哪里錯(cuò)的希望能有大神對(duì)我來(lái)一個(gè)糾正。
數(shù)值型常量包括了整型常量和實(shí)型常量,
那么我們先來(lái)對(duì)整型常量來(lái)進(jìn)行一個(gè)講解,整型常量可以是十六進(jìn)制整數(shù)、八進(jìn)制整數(shù)和十進(jìn)制整數(shù)的三種常量,那么怎么區(qū)分這三種常量呢?
1、 八進(jìn)制整數(shù)
八進(jìn)制的常量前用0(這里采用的是數(shù)字0作為前綴,不是字母O!!!)作為前綴,取值是在0~7之間:
0520 /*合法*/
0101 /*合法*/
0127 /*合法*/
這三組數(shù)字都是合法的,是編譯器能編譯出來(lái)的,不合法的例如:
096 /*不合法,9不是八進(jìn)制的取值范圍*/
078 /*不合法,8不是八進(jìn)制的取值范圍*/
346 /*不合法,沒(méi)有前綴0*/
這三組是不合法的,那么合法和不合法的區(qū)別是什么,合法就是你所用的編譯器能編譯出來(lái),那么不合法就是你的編譯器無(wú)法識(shí)別,所以一定要注意哦。
我們已經(jīng)接觸了C的基礎(chǔ),上文講了關(guān)鍵字,標(biāo)識(shí)符和數(shù)據(jù)類型。那么我們今天就開(kāi)始接觸常量和變量,一口吃不成大胖子,我們今天就著重研究常量這一個(gè)內(nèi)容。2、 十六進(jìn)制整數(shù)
十六進(jìn)制的前綴是以0x或0X(注意這里是0是數(shù)字,不是字母O!!!注意這里是0是數(shù)字,不是字母O!!!)作為前綴,取值在:數(shù)字0~9、字母A~F或a~f
0X16 /*合法的*/
0x2F /*合法的*/
0XCC /*合法的*/
這幾個(gè)都是合法的,不合法的例如:
9A /*不合法,沒(méi)有前綴*/
0X3N /*不合法,N不是十六進(jìn)制的取值*/
056 /*不合法,這是八進(jìn)制的前綴*/
其實(shí)你記住前綴和取值范圍,基本上就不會(huì)錯(cuò)的,因?yàn)榧由锨熬Y之后你所能用的取值范圍就有限制了,你就不會(huì)有太大的選擇空間。
有時(shí)候你會(huì)看見(jiàn)常量后面帶的后綴U或L進(jìn)行修飾,這兩個(gè)字母又是什么意思呢?
U:表示這個(gè)常量是無(wú)符號(hào)整型
L:表示這個(gè)常量是長(zhǎng)整型
LongNumer=1000L /*L表示長(zhǎng)整型*/
Unsigned LongNumer=5000U /*U表示無(wú)符號(hào)整型*/
告訴你個(gè)秘密,這兩個(gè)后綴可以大寫(xiě)也可以小寫(xiě)呢。
3、 十進(jìn)制整數(shù)
十進(jìn)制的整數(shù),這個(gè)是沒(méi)有前綴的,但是大家要注意一點(diǎn)是不能用數(shù)字0去做這個(gè)十進(jìn)制整數(shù)的開(kāi)頭,十進(jìn)制的取值包含0~9,我們都知道計(jì)算機(jī)內(nèi)的整型數(shù)據(jù)都是以二進(jìn)制的方式存放在計(jì)算機(jī)內(nèi)存之中,順便了解一下二進(jìn)制的算法:
二進(jìn)制說(shuō)白了就是逢二進(jìn)一,那么怎么算呢?
0+0=0
0+1=1
1+1=10
1+2=11
以此類推,其實(shí)很簡(jiǎn)單,下面我們?cè)谥v一下二進(jìn)制的題外話:
磁盤(pán)里的二進(jìn)制其實(shí)使用N和S來(lái)表示的,N=0、S=1,通常是把8個(gè)0或者1為一組叫做1byte(字節(jié)),那么這一組之中的0或者1單獨(dú)叫做1bit(比特),一個(gè)英文字母需要1byte,一個(gè)中文漢字需要2byte。
我們舉個(gè)例子,把這八個(gè)0當(dāng)作不亮的燈泡,那么1為燈泡亮起來(lái),現(xiàn)在我要給你傳達(dá)一個(gè)數(shù)據(jù),八個(gè)燈泡亮或者沒(méi)有亮的行為叫做“并行”(8位),如果我只拿一個(gè)燈泡閃爍給你傳達(dá)消息的行為是“串行”,也就是一串信號(hào)的意思,那么這么一對(duì)比,在相同頻率下,“并行”的傳送效率肯定高于“串行”。所以呢,你想你的電腦處理數(shù)據(jù)快一點(diǎn)呢,就選高位數(shù)的,64位肯定高于32位。
好了言歸正傳,用11在十進(jìn)制的顯示,給大家舉個(gè)例子。
2的表達(dá)是10、3的表達(dá)是11、4的表達(dá)是100……11的就是1011,我們?cè)谑M(jìn)制的表達(dá)就是
0000000000001011
那么-11怎么表達(dá)呢?因?yàn)橐匝a(bǔ)碼進(jìn)行表示,我們先取它的絕對(duì)值,然后進(jìn)行取反:
1111111111110100
取反之后我們還需要加1,就能得到最終的結(jié)果-11
1111111111110101
這里給大家說(shuō)一下,對(duì)于有符號(hào)的整數(shù),其內(nèi)存中存放的最左面的那一位是符號(hào)位,如果是0就是正,如果是1就是負(fù),記住哦。
剛才那么多我們講的都是整數(shù),現(xiàn)在我們講一下這個(gè)有小數(shù)點(diǎn)的數(shù)值,也就是浮點(diǎn)型常量(實(shí)型常量),它的表示方式有小數(shù)表示、指數(shù)表示方式。
小數(shù)表示方式就是
SciNum1=123.45
SciNum2=0.5637
指數(shù)表示方式,用字母e或E來(lái)進(jìn)行指數(shù)顯示,514e2就是表達(dá)的51400,514e-2表達(dá)的就是5.14,用指數(shù)顯示:
SciNum1=1.2345e2 /*指數(shù)方式顯示*/
SciNum2=1.2345e-1 /*指數(shù)方式顯示*/
這里給大家最后說(shuō)一個(gè)小知識(shí),如果你在后面加一個(gè)F進(jìn)行修飾,那么這個(gè)值就代表單精度類型,大小寫(xiě)都通用,F通常表示float單精度類型,如果你不帶,默認(rèn)選項(xiàng)都是double雙精度類型哦。
好了今天就先學(xué)到這里,想從零學(xué)習(xí)C的可以關(guān)注我哦。
總結(jié)
以上是生活随笔為你收集整理的整型和浮点型的区别_C的基础内容:常量之数值型常量,适合新手的学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python测试工程师招聘_招聘软件测试
- 下一篇: python csv性能_性能:Pyth