c語言中定義變數的資料型別比如intchar有

時間 2021-10-17 02:37:57

1樓:匿名使用者

1.首先你要多看看記憶體管理方面的內容。 記憶體是由系統管理的,int和char,如果是常量那麼他們會被分配到常量區,如果是靜態變數,會被分到靜態變數區,區域性變數,又不一樣。

不同的定義,記憶體地址肯定是不同的,這個系統自己管理。

2.沒影響。但對執行時所佔空間就就有影響。源程式檔案大小隻是**量的大小

2樓:**夢幻

程式執行時,記憶體分為堆區、棧區、靜態區、文字常量區和**區。

如果是區域性變數,比如在main函式或其他函式內定義的int之類,是分配在棧區的。每呼叫一個函式,系統會在棧區當前棧頂自動分配一塊記憶體,這塊記憶體的大小和你這個函式裡的區域性變數有關,而且有大小限制,所以不可能在main裡定義一個int a[1000000];的。定義在一起的區域性變數,其記憶體也是相鄰的。

如果是程式設計師malloc得到的記憶體,是來自堆區的。這裡的記憶體分配是個很複雜的演算法,重點是迅速找到一個大小合適的空閒記憶體,而且不產生過多碎片。這種分配的記憶體基本上是隨機的。

定義的變數型別不同,對**和exe的大小沒多大影響,只和執行exe時佔用的記憶體大小有關。

3樓:

1: 一個 int 型變數佔用兩個位元組記憶體,也就是16bit;

一個 char 型變數佔用一個位元組記憶體,也就是8bit;

如果的宣告變數時沒有在「int」或「char」前加儲存型別說明符,則編譯器就會將變數預設為auto變數,這種變數會被放在執行記憶體裡,至於怎麼放這就是c編譯器決定的,而且各個公司出的c編譯器的處理規則是會有一些不一樣的。

2:變數型別不同對源程式檔案大小沒什麼影響,但會對程式執行有影響;如果在8位微控制器上,則int型別的資料處理速度會慢很多;如果你要存入的數會大於255,則使用 char 型就會發生溢位,使程式執行發生錯誤;

具體用哪一種,主要還是看你要存入的什麼型別的資料。

4樓:匿名使用者

看c語言的 程式設計手冊

char 是8位

int 是32位

…………~~~

5樓:smile隨樂

想看一下它是不是隨機的,你就在vc裡面自己動手測試一下唄。定義幾個變數,然後除錯**,在除錯裡面看一下你定義的變數的地址,然後自己分析一下

c語言中 char與int有什麼區別?

6樓:鄙視04號

c語言中 char 與 int 具體區別如下:

1、表示的變數型別不同:

char 是字元變數,而 int 是整型變數。

2、申請的型別資料不同:

char 用來申請字元和字串或者字串指標;int 用來申請整型資料,或者整形資料指標。

3、位元組、能表示的內容不同:

char只有一個位元組,int有4個位元組,能表示的內容大小不一樣;char只有0~255,int範圍[-2^31 , 2^31 -1] (處理器是64位的可以更大)

7樓:長憶

char 是字元變數,用來申請字元和字串或者字串指標的

int是整型變數,用來申請整型資料,或者整形資料指標

8樓:匿名使用者

char是單字元,int是整形數,一個char型別變數只佔一個位元組記憶體,而一個int型別變數佔四個位元組

9樓:手機使用者

儲存需要的 位元組數不同,在32位機器上,一個int變數需要4個位元組(32位);一個char變數需要1個位元組(8位)

10樓:匿名使用者

char佔用一個記憶體(8bit),int佔用4個記憶體(32bit).還要看編譯器的環境,不同的編譯器給每個資料型別定義的長度可能有不同。

11樓:此使用者被關機

區別就是儲存資料的大小不一樣

int一般是4個位元組(有些系統是8個位元組和long一樣。。)

而char一般是1個位元組

12樓:匿名使用者

char佔用一個記憶體,int佔用4個記憶體,他們表示的值的範圍也不一樣

c語言中,char是幹什麼用的?它和int ,float有什麼區別?拜託舉個例子。

13樓:year勿忘_心安

char 是字

bai符型別 比如

說 char a=『a』 宣告du了一zhi個字元型別的變dao量專

int 是整型屬 比如說 int a=1 宣告瞭一個整型的變數float是浮點型 比如說 float a=1.0 宣告瞭一個浮點型的變數

望採納 謝謝

14樓:雨憶聆聽

int是整型資料

bai;如du:int a 則a的值只能

是整型zhi;如a=3;

char是字元型;如:char a 則a的值dao只能是回字元型;如a='a'

float是浮點型資料答;如:float a 則a的值只能是浮點型資料;如a=3.50;《即我們數學中的實數:必須寫成小數形式》

15樓:小樂公主

(型別)

其中,bai型別du描述,如整型,浮點等類zhi型是一個表達dao式。投運營商操版作後,返權回型別為型別的值都有,這蒙上操作本身不改變操作中,操作後的操作本身並沒有改變,例如:

int nvar = 0xab65;

字元cchar = char(nvar);這些結果鑄造是0xab65高2個位元組刪除的整數值,這兩個位元組分配給變數的值作為char型別cchar含量的低端,並且轉換後的值nvar型別後沒有改變。

在c語言型別說明中,int、char、short等資料型別的長度

16樓:匿名使用者

具體不大一樣,char型在任何情況下都是佔1個位元組,而比如int型,它的長度與環境的字長相同,在16位的環境中,它佔16位,2個位元組;32位環境中佔4個位元組。

所以,如果在程式設計中牽扯到型別或變數的字長問題,建議用sizeof()獲取,較為保險,不要想當然的認為多少就是多少

17樓:阿冬

c語言標準中對於資料型別所佔寬度是這樣定義的:

char就是1位元組(固定不變),short不少於2位元組,int不少於short,long不少於4位元組,且long不少於int,long long不少於long。

也就是說,除了char,其他整型範圍都是相對而言的,確保後一種的寬度不低於前一種即可(可能相等),在不同的年代,計算機硬體發展不同,記憶體、外存容量也不同,主流編譯器在設計的時候會綜合考慮計算機硬體的情況,來設計每一種資料型別的實際寬度。

18樓:嘎嘎的壞壞先生

你要問什麼呢?就是選c啊。

c語言中定義變數的資料型別(比如:int,char)有什麼區別?

19樓:

1: 一個 int 型變數佔用兩個位元組記憶體,也就是16bit;

一個 char 型變數佔用一個位元組記憶體,也就是8bit;

如果的宣告變數時沒有在「int」或「char」前加儲存型別說明符,則編譯器就會將變數預設為auto變數,這種變數會被放在執行記憶體裡,至於怎麼放這就是c編譯器決定的,而且各個公司出的c編譯器的處理規則是會有一些不一樣的。

2:變數型別不同對源程式檔案大小沒什麼影響,但會對程式執行有影響;如果在8位微控制器上,則int型別的資料處理速度會慢很多;如果你要存入的數會大於255,則使用 char 型就會發生溢位,使程式執行發生錯誤;

具體用哪一種,主要還是看你要存入的什麼型別的資料。

c語言當中int,float,double,char這四個有什麼區別?

20樓:加百列

區別在以下bai方面:

du一、定義方面:

1、int為整數型,zhi用於定義整dao數型別的資料 。

2、float為單

內精度浮點型,能準確到容小數點後六位 。

3、double為雙精度浮點型,能準確到小數點都十二位 。

4、char為字元型,用於定義字元型別的資料。

二、記憶體佔據:

1、int 的記憶體大小是4 個byte。

2、float 記憶體大小是4 個byte。

3、double 的記憶體大小是8 個byte。

4、char 的記憶體大小是1 個byte。

基本資料型別表如下:

三、表示的資料範圍:

1、int:數的範圍為-(2的31次方-1)到(2的31次方-1),數字為-2 147 483 647~2 147 483 647。

2、double:表示的範圍為+1.111111111111111111111*2^1023(1.後面52個1)為1.7*10^308。負數亦然。

3、float:整數極限為3.4*10^38,負數亦然。

4、char:-128- 127。

21樓:小安無敵

int為整數型,用於定義整數型別的資料

float為單精度浮點型,能準確到小數點後六位double為雙精度浮點型,能準確到小數點都十二位char為字元型,用於定義字元型別的資料

22樓:長孫凌文

一個變數再定義是型別就固定了。如int

a在定義域內a都是整形。當然可以用強制型別轉內換來改變。你容可以用sizeof()來測任意一個變數的長度。

如對於int

a;sizeof(int)=2,sizeof(a)=2;表示int性和a都是2位元組資料。

一般int

char都是2位元組。

float就是單精度其範圍是10e-38到10e38,有效位為6-7.(e是指數意思)

double就是雙精度其範圍是10e-308到10e308,有效位15-16.

long

doule是長雙精度其範圍是10e-4931到10e4931.有效位18-19.

%7表示輸出這個資料的長度為7,一般是為了資料顯示整齊。

如我輸出1234,只有4位,那我就要在自動不3各空格。

當資料超出預定位寬時好像是按實際位輸出,這個有點記不清了。

希望我的回答對你有幫助

C語言中賦值時不同資料型別的轉換

你說的int應該是16位,2位元組。char型別只佔用了一個位元組,8位。所以轉化的時候只要取int型16位的低8位就夠了。這個和變數的記憶體儲存方式有關係,你要弄懂變數怎麼在記憶體中放置和儲存的就很容易理解了。 是int 轉為char 才取 int 的低8位 int 有 32位 轉成char型別時...

c語言中變數的地址是什麼型別的,C語言中變數的地址是什麼型別的

風若遠去何人留 變數的地址,在c語言中,一般寫作指標型別。不同型別的變數地址,用不同的指標進行儲存。比如,char 型別的地址,使用char 儲存,而int型地址,用int 儲存。除此外,部分情況下也會採用整型型別來儲存變數地址,具體使用何種整型型別,取決於編譯器 1 16位編譯器,地址佔16位,2...

易語言如何自定義資料型別

使用者可以隨時在程式中自行定義新的資料型別。自定義資料型別時需要設定資料型別的名稱及其成員。資料型別成員各屬性的設定方法等同於變數設定設定方法。具體例項 在易語言 點 支援庫 旁邊 的程式面板。點自定義資料型別 插入新資料型別。易語言就自動列個表給我們了。在資料型別名稱中輸入 安全屬性 回車2次 2...