C語言中基本數(shù)據(jù)類型、變量和常量的使用_第1頁
C語言中基本數(shù)據(jù)類型、變量和常量的使用_第2頁
C語言中基本數(shù)據(jù)類型、變量和常量的使用_第3頁
C語言中基本數(shù)據(jù)類型、變量和常量的使用_第4頁
C語言中基本數(shù)據(jù)類型、變量和常量的使用_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第第頁C語言中基本數(shù)據(jù)類型、變量和常量的使用

前言

一、人物簡介

第一位閃亮登場,有請今后會(huì)一直教我們(C語言)的老師——自在。第二位上場的是和我們一起學(xué)習(xí)的小白程序猿——逍遙。二、基本數(shù)據(jù)類型

1、整型

C語言中的整型數(shù)據(jù)如下表所示:

數(shù)據(jù)類型含義長度(字節(jié))取值范圍(有符號)取值范圍(無符號)short短整型2[-,-1][0,-1]int整型4[-,-1][0,-1]long長整型4或8longlong長長整型8[-,-1][0,-1]整型數(shù)據(jù)可以是有符號的,也可以是無符號的。有符號的整型可以表示負(fù)數(shù)和正數(shù),而無符號的整型只能表示非負(fù)整數(shù)。2、浮點(diǎn)型

浮點(diǎn)型用于表示實(shí)數(shù),它分為單精度浮點(diǎn)型(float)和雙精度浮點(diǎn)型(double)。單精度浮點(diǎn)型占用4個(gè)字節(jié),雙精度浮點(diǎn)型占用8個(gè)字節(jié)。它們的取值范圍和精度如下表所示:

數(shù)據(jù)類型長度(字節(jié))取值范圍精度float41.2E-38~3.4E38約6位小數(shù)double82.2E-308~1.8E308(15位有效數(shù)字)約15位小數(shù)浮點(diǎn)型數(shù)據(jù)在計(jì)算機(jī)內(nèi)部以二進(jìn)制形式存儲(chǔ),因此可能會(huì)存在精度問題。在進(jìn)行浮點(diǎn)型數(shù)據(jù)的比較時(shí),應(yīng)該使用適當(dāng)?shù)恼`差范圍進(jìn)行比較。

3、字符型

字符型用于表示單個(gè)字符,它占用1個(gè)字節(jié)。

數(shù)據(jù)類型含義長度(字節(jié))取值范圍(有符號)取值范圍(無符號)char字符型1[-,-1][0,-1]字符型數(shù)據(jù)可以作為單個(gè)字符使用,也可以作為整型數(shù)據(jù)使用,表示該字符在ASCII碼表中的對應(yīng)數(shù)值。

4、布爾型

布爾型(bool)用于表示真假值,它只有兩個(gè)取值:true和false。

在C語言中,布爾型數(shù)據(jù)被定義為一個(gè)整型數(shù)據(jù)類型,0表示false,非0表示true。

三、變量

1、變量的定義和聲明

在C語言中,變量必須先被定義或聲明才能使用。定義一個(gè)變量意味著為它分配內(nèi)存,聲明一個(gè)變量意味著告訴編譯器這個(gè)變量的類型和名稱。

變量的定義格式如下:typevariable_name;其中,type是變量的數(shù)據(jù)類型,variable_name是變量的名稱。例如:

intapple;shorti=5;floatvoltage;變量的聲明有兩種情況:一種是需要建立存儲(chǔ)空間的。例如:intapple在聲明的時(shí)候就已經(jīng)建立了存儲(chǔ)空間。

另一種是不需要建立存儲(chǔ)空間的,通過使用ex(te)rn關(guān)鍵字聲明變量名而不定義它。例如:externintapple,其中變量apple可以在別的文件中定義。

externintapple;//聲明,不是定義intstudents;//聲明,也是定義一般來講,除非有extern關(guān)鍵字,否則都是變量的定義

2、變量類型

在C語言中,變量的類型指的是變量所存儲(chǔ)的數(shù)據(jù)類型。我們前面介紹的基本數(shù)據(jù)類型,都可以作為變量的類型。

int:整型,用于存儲(chǔ)整數(shù)。long:長整型,用于存儲(chǔ)更大的整數(shù)。float:單精度浮點(diǎn)型,用于存儲(chǔ)浮點(diǎn)數(shù)。double:雙精度浮點(diǎn)型,用于存儲(chǔ)更大的浮點(diǎn)數(shù)。char:字符型,用于存儲(chǔ)字符。bool:布爾型,用于存儲(chǔ)布爾值。C語言還提供了一些復(fù)合數(shù)據(jù)類型,如結(jié)構(gòu)體、聯(lián)合體和枚舉等,這些符合數(shù)據(jù)類型,我們在以后的文章中再介紹。

3、變量命名規(guī)則

變量名可以由字母、數(shù)字和下劃線組成,但必須以字母或下劃線開頭。變量名不能使用關(guān)鍵字作為名稱,變量名的長度沒有限制,但建議使用有意義的名稱。正確的變量命名

int_gCount=1;intm_Age=18;long(ti)me2=20;錯(cuò)誤的變量命名

int1round=0;//不能以數(shù)字開頭intcase=1;//不能以關(guān)鍵字作為變量名int%age=16;//不能用標(biāo)點(diǎn)符號intnameage=18;//不能用空格4、變量的初始化和賦值

在C語言中,可以使用賦值運(yùn)算符(=)將一個(gè)值賦給一個(gè)變量。例如,下面的代碼將值20賦給變量num:

intnum;num=20;變量的初始化是指在聲明變量時(shí)將其賦初值。例如,下面的代碼聲明并初始化了一個(gè)名為num的整數(shù)變量:

intnum=10;5、變量作用域

在C語言中,變量的作用域指的是變量在程序中可見的范圍。變量可以在函數(shù)內(nèi)部或外部定義。

在函數(shù)內(nèi)部定義的變量稱為局部變量,只在該函數(shù)中可見。#includevoidprint_local_num(){intlocal_num=20;//局部變量printf("local_num=%dn",local_num);}intmain(){print_local_num();//輸出local_num=20return0;}在函數(shù)外部定義的變量稱為全局變量,可以在整個(gè)程序中使用。#includeintglobal_num=10;//全局變量voidprint_global_num(){printf("global_num=%dn",global_num);}intmain(){print_global_num();//輸出global_num=10return0;}6、變量存儲(chǔ)類型

在C語言中,變量的存儲(chǔ)類型指的是變量所存儲(chǔ)的位置。C語言中的存儲(chǔ)類型包括自動(dòng)、靜態(tài)、(寄存器)和外部等。

自動(dòng)變量:自動(dòng)變量在函數(shù)內(nèi)部聲明,在函數(shù)執(zhí)行時(shí)被創(chuàng)建,在函數(shù)結(jié)束時(shí)被銷毀。靜態(tài)變量:靜態(tài)變量在函數(shù)內(nèi)部或函數(shù)外部聲明,它們在程序開始執(zhí)行時(shí)被創(chuàng)建,在程序結(jié)束時(shí)被銷毀。寄存器變量:寄存器變量是指被存儲(chǔ)在(CPU)寄存器中的變量,它們通常用于在計(jì)算密集型的代碼中提高性能。外部變量:外部變量是在程序文件外部聲明的全局變量,可以被程序的所有文件訪問。自動(dòng)變量的默認(rèn)存儲(chǔ)類別為auto。例如,下面的代碼定義了一個(gè)自動(dòng)變量num:

#includevoidprint_num(){autointnum=30;printf("num=%dn",num);}intmain(){print_num();//輸出num=30return0;}靜態(tài)變量默認(rèn)存儲(chǔ)類別為stat(ic),在程序執(zhí)行期間始終存在,它的值在函數(shù)調(diào)用之間保持不變。例如,下面的代碼定義了一個(gè)靜態(tài)變量static_num:

#includevoidprint_static_num(){staticintstatic_num=40;printf("static_num=%dn",static_num);static_num++;}intmain(){print_static_num();//輸出static_num=40print_static_num();//輸出static_num=41print_static_num();//輸出static_num=42return0;}寄存器變量的默認(rèn)存儲(chǔ)類別為register。例如,下面的代碼定義了一個(gè)寄存器變量reg_num:

#includevoidprint_reg_num(){registerintreg_num=50;printf("reg_num=%dn",reg_num);}intmain(){print_reg_num();//輸出reg_num=50return0;}外部變量的默認(rèn)存儲(chǔ)類別為extern。例如,下面的代碼定義了一個(gè)外部變量extern_num,并在另一個(gè)文件中訪問它:

//other_file.cintextern_num=60;//main.c#includeexternintextern_num;voidprint_extern_num(){printf("extern_num=%dn",extern_num);}intmain(){print_extern_num();//輸出extern_num=60return0;}四、常量

在C語言中,常量可以是整數(shù)、浮點(diǎn)數(shù)、字符或字符串。

1、整數(shù)常量

整數(shù)常量是指不帶小數(shù)部分的數(shù)字。在C語言中,整數(shù)常量可以用十六進(jìn)制、八進(jìn)制或十進(jìn)制表示。下表列出了不同進(jìn)制下整數(shù)常量的表示方法:

進(jìn)制格式示例十進(jìn)制直接寫數(shù)字10,20,30八進(jìn)制以0開頭012,034,076十六進(jìn)制以0x或0X開頭0x10,0x1E,0xFF例如,下面的代碼定義了三個(gè)整數(shù)常量:

#includeintmain(){intdecimal_num=10;intoctal_num=012;inthex_num=0xFF;printf("decimal_num=%d,octal_num=%d,hex_num=%dn",decimal_num,octal_num,hex_num);return0;}輸出結(jié)果為:decimal_num=10,octal_num=10,hex_num=255。

2、浮點(diǎn)數(shù)常量

浮點(diǎn)數(shù)常量是指帶有小數(shù)部分的數(shù)字。在C語言中,浮點(diǎn)數(shù)常量可以用小數(shù)點(diǎn)表示,也可以用科學(xué)計(jì)數(shù)法表示。例如,下面的代碼定義了兩個(gè)浮點(diǎn)數(shù)常量:

#includeintmain(){floatfloat_num=1.23;doubledouble_num=1.23e-5;printf("float_num=%f,double_num=%fn",float_num,double_num);return0;}輸出結(jié)果為:float_num=1.230000,double_num=0.000012。

3、字符常量

字符常量是指用單引號括起來的單個(gè)字符。例如,下面的代碼定義了兩個(gè)字符常量:

#includeintmain(){charchar_a='A';charchar_b='B';printf("char_a=%c,char_b=%cn",char_a,char_b);return0;}4、字符串常量

字符串常量是指用雙引號括起來的多個(gè)字符。在C語言中,字符串常量實(shí)際上是一個(gè)字符數(shù)組,以空字符('?')結(jié)尾。例如,下面的代碼定義了一個(gè)字符串常量:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論