變數中存儲的是什麼內容
變數存儲的是對應類型的值,是否為地址同樣取決於類型。
變數具有不同的類型。
整型變數int,存儲的就是一個整數;float類型,存儲的是實數;char類型,存儲的是字元(實際上也是整數)。
指針變數,是C語言的特殊變數,其存儲的是地址。在C語言中,只有指針是用來存儲地址值的。
Ⅱ C語言中變數的存儲類型有哪幾種,存儲方式哪幾種謝嘍
在C語言中,對變數的存儲類型說明有以下四種:
1、auto 自動變數
2、register 寄存器變數
3、extern 外部變數
4、static 靜態變數
所謂存儲類型是指變數佔用內存空間的方式,也稱為存儲方式。
變數的存儲方式可分為「靜態存儲」和「動態存儲」兩種。
1、靜態存儲變數通常是在變數定義時就在存儲單元並一直保持不變,直至整個程序結束。
2、動態存儲變數是在程序執行過程中,使用它時才分配存儲單元,使用完畢立即釋放。典型的例子是函數的形式參數,在函數定義時並不給形參分配存儲單元,只是在函數被調用時,才予以分配,調用函數完畢立即釋放。
如果一個函數被多次調用,則反復地分配、釋放形參變數的存儲單元。從以上分析可知,靜態存儲變數是一直存在的,而動態存儲變數則時而存在時而消失。
(2)變數中存儲的是什麼內容擴展閱讀:
變數根據定義的位置的不同的生命周期,具有不同的作用域,作用域可分為6種:全局作用域,局部作用域,語句作用域,類作用域,命名空間作用域和文件作用域。
一、從作用域看:
1、全局變數具有全局作用域。全局變數只需在一個源文件中定義,就可以作用於所有的源文件。當然,其他不包含全局變數的定義的源文件需要用extern關鍵字再次聲明這個全局變數。
2、靜態局部變數具有局部作用域,它只被初始化一次,自從第一次被初始化直到程序運行結束一直存在,它和全局變數的區別在於全局變數對所有函數都是可見的,而靜態局部變數只對定義自己的函數體始終可見。
3、局部變數也只有局部作用域,它是自動對象(auto),它在程序運行期間不是一直存在,而是只在函數執行期間存在,函數的一次調用執行結束後,變數被撤銷,其所佔用的內存也被收回。
4、靜態全局變數也具有全局作用域,它與全局變數的區別在於如果程序包含多個文件的話,它作用於定義它文件里,不能作用到其他文件里,即被static關鍵字修飾過的變數具有文件作用域。這樣即使兩個不同的源文件都定義了相同名字的靜態全局變數,它們也是不同的變數。
二、從分配空間看:
全局變數,靜態局部變數,靜態全局變數都在靜態存儲區分配空間,而局部變數在棧里分配空間。
全局變數本身就是靜態存儲方式,靜態全局變數當然也是靜態存儲方式。這兩者在存儲方式上並無不同。這兩者的區別雖在於非靜態全局變數的作用域是整個源程序,當一個源程序由多個源文件組成時,非靜態的全局變數在各個源文件中都是有效的。
而靜態全局變數則限制了其作用域,即只在定義該變數的源文件內有效,在同一個源程序的其他源文件中不能使用它。由於靜態全局變數的作用域局限於一個源文件內,只能為該源文件內的函數公用,因此可以避免在其他源文件中引起錯誤。
1、靜態變數會放在程序的靜態數據存儲區(全局可見)中,這樣可以在下一次調用的時候還可以保持原來的賦值。這一點是它與堆棧變數和堆變數的區別。
2、變數用static告知編譯器,自己僅僅在變數的作用范圍內可見。這一點是它與全局變數的區別。
參考資料來源:網路-變數-存儲類型
Ⅲ 變數的存儲類型是什麼
量有4種存儲類型,分別是auto(自動型)、static(靜態型)、register(寄存器型)和extern(外部型)。在定義或說明一個變數時可以加上存儲類型關鍵字,以限定其存儲類別。
存儲類型決定了系統將在哪一個數據存儲區為變數分配存儲空間。
Ⅳ 在c語言中,變數名 地址 存儲單元的內容 分別怎樣儲存
首先,在C語言中,存儲器實際上是一個大的位元組數組,位元組數組中的每一個元素稱為存儲單元,基本的存儲單元為位元組。
其次,在C語言中,每一個存儲單元佔一個位元組,每一個位元組對應一個地址,這個地址即為內存地址。
再次,在C語言中,變數名是一個標識符,在C語言中標識符只能有數字、字母、下劃線(_)組成,且第一個符號必須是字母或者下劃線(_)。
最後,對於C語言中的變數來說,它具備兩個基本的屬性,一個是地址,一個是內容。正是因為此,所以在函數參數傳遞時有兩種方法一種是傳址,一種是傳值 。比如下面的代碼:
inta=2;//a是變數名,它有兩個屬性,一個是地址,一個是值。
int*p=&a;//使用取地址運算符&即可獲取變數的地址
intb=a;//使用變數名可以取得變數的值
intc=*p;//使用間接引用運算符*也可以取得變數a的值。
Ⅳ 在C語言中,全局變數的存儲類別是什麼
內存中供用戶使用的存儲空間分為代碼區與數據區兩個部分。變數存儲在數據區,數據區又可分為靜態存儲區與動態存儲區。
靜態存儲是指在程序運行期間給變數分配固定存儲空間的方式。如全局變數存放在靜態存儲區中,程序運行時分配空間,程序運行完釋放。
動態存儲是指在程序運行時根據實際需要動態分配存儲空間的方式。如形式參數存放在動態存儲區中,在函數調用時分配空間,調用完成釋放。
C語言中對變數的說明包括兩方面的內容:變數類型以及變數的存儲類型。變數類型如:int(整形),char(字元型)是用來說明變數所佔用的內存空間的大小。變數存儲類型用來說明變數的作用范圍。
Ⅵ java,對象變數里存儲的是什麼
例2,abcd存儲的就ROOM類的對象。如果ROOM裡面定義了其他成員就可以使用這些成員。
Ⅶ c語言中是變數存儲地址還是地址存儲變數啊
變數在內存中存儲
每個內存位置都有一個編號,就是內存地址值
地址值,就是個整數,所以,也可以存儲到變數中,C中的指針變數,就是專門用來存儲地址的變數
。
Ⅷ c語言中變數是怎樣存儲的
這個依照你的變數或者對象的申明位置和方式不同而不同的。
一般來說,全局變數,靜態變數,首先分配,分配在靜態存儲空間。
局部變數,在申明的是後分配,分配在棧上。作用域結束後系統會自動回收。
動態申請的空間,在執行分配函數時分配,分配在堆上,又程序員自己寫釋放代碼手動釋放空間。
Ⅸ Java char類型的變數在內存實際存儲的是什麼內容
樓上不對哦,java裡面的char是unicode編碼的,而不是ASCII,每個char占兩個位元組,存儲對應字元的編碼。
Ⅹ C語言變數存儲在內存(memory)中的什麼地方
c語言中數據存儲分為以下幾個部分,每個部分存儲不同的內容:
1、棧區:存放函數的參數值,局部變數的值等。
2、堆區 :存儲動態生成的對象,一般由程序員分配釋放。
3、靜態區或者全局區: 存儲全局變數和靜態變數。
4、文字常量區 :存儲常量字元串。
5、代碼區 : 存儲函數體的2進制代碼。