亚洲综合图片区自拍_思思91精品国产综合在线观看_一区二区三区欧美_欧美黑人又粗又大_亚洲人成精品久久久久桥本

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

2023-08-18 17:09:57 來源:知微之見

前言

一、人物簡介

第一位閃亮登場,有請今后會一直教我們C語言的老師 —— 自在。第二位上場的是和我們一起學習的小白程序猿 —— 逍遙。

二、基本數(shù)據(jù)類型

1、整型

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

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

2、浮點型

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

數(shù)據(jù)類型長度(字節(jié))取值范圍精度
float41.2E-38 ~ 3.4E38約6位小數(shù)
double82.2E-308 ~ 1.8E308(15位有效數(shù)字)約15位小數(shù)

浮點型數(shù)據(jù)在計算機內(nèi)部以二進制形式存儲,因此可能會存在精度問題。在進行浮點型數(shù)據(jù)的比較時,應該使用適當?shù)恼`差范圍進行比較。


(資料圖片僅供參考)

3、字符型

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

數(shù)據(jù)類型含義長度(字節(jié))取值范圍(有符號)取值范圍(無符號)
char字符型1[ - , -1 ][ 0 ,-1 ]

字符型數(shù)據(jù)可以作為單個字符使用,也可以作為整型數(shù)據(jù)使用,表示該字符在ASCII碼表中的對應數(shù)值。

4、布爾型

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

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

三、變量

1、變量的定義和聲明

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

變量的定義格式如下:
type variable_name;

其中,type是變量的數(shù)據(jù)類型,variable_name是變量的名稱。例如:

int apple;short i = 5;float voltage;
變量的聲明有兩種情況:

一種是需要建立存儲空間的。例如:int apple 在聲明的時候就已經(jīng)建立了存儲空間。

另一種是不需要建立存儲空間的,通過使用extern關鍵字聲明變量名而不定義它。例如:extern int apple, 其中變量 apple 可以在別的文件中定義。

extern int apple; //聲明,不是定義int students; //聲明,也是定義

一般來講,除非有extern關鍵字,否則都是變量的定義

2、變量類型

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

int:整型,用于存儲整數(shù)。long: 長整型,用于存儲更大的整數(shù)。float:單精度浮點型,用于存儲浮點數(shù)。double:雙精度浮點型,用于存儲更大的浮點數(shù)。char:字符型,用于存儲字符。bool:布爾型,用于存儲布爾值。

C語言還提供了一些復合數(shù)據(jù)類型,如結(jié)構(gòu)體、聯(lián)合體和枚舉等,這些符合數(shù)據(jù)類型,我們在以后的文章中再介紹。

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

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

正確的變量命名

int _gCount = 1;int m_Age = 18;long time2 = 20;

錯誤的變量命名

int 1round = 0; //不能以數(shù)字開頭int case = 1; //不能以關鍵字作為變量名int %age = 16; //不能用標點符號int name age = 18; //不能用空格

4、變量的初始化和賦值

在C語言中,可以使用賦值運算符(=)將一個值賦給一個變量。

例如,下面的代碼將值20賦給變量num:

int num;num = 20;
變量的初始化是指在聲明變量時將其賦初值。

例如,下面的代碼聲明并初始化了一個名為num的整數(shù)變量:

int num = 10;

5、變量作用域

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

在函數(shù)內(nèi)部定義的變量稱為局部變量,只在該函數(shù)中可見。
#include < stdio.h >    void print_local_num() {      int local_num = 20; // 局部變量      printf("local_num = %dn", local_num);  }    int main()  {      print_local_num();  // 輸出 local_num = 20   return 0;      }
在函數(shù)外部定義的變量稱為全局變量,可以在整個程序中使用。
#include < stdio.h >int global_num = 10; // 全局變量void print_global_num() {    printf("global_num = %dn", global_num);}int main() {    print_global_num();  // 輸出 global_num = 10    return 0;}

6、變量存儲類型

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

自動變量:自動變量在函數(shù)內(nèi)部聲明,在函數(shù)執(zhí)行時被創(chuàng)建,在函數(shù)結(jié)束時被銷毀。靜態(tài)變量:靜態(tài)變量在函數(shù)內(nèi)部或函數(shù)外部聲明,它們在程序開始執(zhí)行時被創(chuàng)建,在程序結(jié)束時被銷毀。寄存器變量:寄存器變量是指被存儲在CPU寄存器中的變量,它們通常用于在計算密集型的代碼中提高性能。外部變量:外部變量是在程序文件外部聲明的全局變量,可以被程序的所有文件訪問。

自動變量的默認存儲類別為auto。例如,下面的代碼定義了一個自動變量num:

#include < stdio.h >void print_num() {    auto int num = 30;    printf("num = %dn", num);}int main() {    print_num();  // 輸出 num = 30    return 0;}

靜態(tài)變量默認存儲類別為static,在程序執(zhí)行期間始終存在,它的值在函數(shù)調(diào)用之間保持不變。例如,下面的代碼定義了一個靜態(tài)變量static_num:

#include < stdio.h >void print_static_num() {    static int static_num = 40;    printf("static_num = %dn", static_num);    static_num++;}int main() {    print_static_num();  // 輸出 static_num = 40    print_static_num();  // 輸出 static_num = 41    print_static_num();  // 輸出 static_num = 42    return 0;}

寄存器變量的默認存儲類別為register。例如,下面的代碼定義了一個寄存器變量reg_num:

#include < stdio.h >void print_reg_num() {    register int reg_num = 50;    printf("reg_num = %dn", reg_num);}int main() {    print_reg_num();  // 輸出 reg_num = 50    return 0;}

外部變量的默認存儲類別為extern。例如,下面的代碼定義了一個外部變量extern_num,并在另一個文件中訪問它:

// other_file.cint extern_num = 60;// main.c#include < stdio.h >extern int extern_num;void print_extern_num() {    printf("extern_num = %dn", extern_num);}int main() {    print_extern_num();  // 輸出 extern_num = 60    return 0;}

四、常量

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

1、 整數(shù)常量

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

進制格式示例
十進制直接寫數(shù)字10, 20, 30
八進制以0開頭012, 034, 076
十六進制以0x或0X開頭0x10, 0x1E, 0xFF

例如,下面的代碼定義了三個整數(shù)常量:

#include < stdio.h >int main() {    int decimal_num = 10;    int octal_num = 012;    int hex_num = 0xFF;    printf("decimal_num = %d, octal_num = %d, hex_num = %dn", decimal_num, octal_num, hex_num);    return 0;}

輸出結(jié)果為:decimal_num = 10, octal_num = 10, hex_num = 255。

2、 浮點數(shù)常量

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

#include < stdio.h >int main() {    float float_num = 1.23;    double double_num = 1.23e-5;    printf("float_num = %f, double_num = %fn", float_num, double_num);    return 0;}

輸出結(jié)果為:float_num = 1.230000, double_num = 0.000012。

3、 字符常量

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

#include < stdio.h >int main() {    char char_a = "A";    char char_b = "B";    printf("char_a = %c, char_b = %cn", char_a, char_b);    return 0;}

4、 字符串常量

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

#include < stdio.h >int main() {    char str[] = "Hello, world!";    printf("%sn", str);    return 0;}

輸出結(jié)果為:Hello, world!。

小結(jié)

通過這篇文章,我們已經(jīng)學會了C語言中基本的數(shù)據(jù)類型、變量和常量的使用。繼續(xù)加油,你會成為C語言大佬的!

標簽:

上一篇:常見的三維測量方法有哪些(結(jié)構(gòu)光編碼原理)
下一篇:最后一頁