動態n存儲
『壹』 動態存儲區與靜態存儲區的區別
我理解吧,這個動態跟靜態主要是針對指針而言的。而且對於單個變數來說,動態跟靜態的概念體現的不是特別清楚,下面主要介紹數組吧。
如果你聲明一個數組int a[100],那麼這個數組的大小就是100,在內存中的位置也固定,如果後來發現數組不夠大,你就只能重新定義一個更大的數組,而不能直接改變數組a的大小。這就是靜態存儲。
如果你聲明一個指針int *p,一開始你想開辟一個100的數組,就寫p = new int[100],後面發現100不夠大,你可以先delete []p,把原來的空間釋放掉,然後讓p = new int[200],p就會指向一個大小為200的數組,這個數組的大小以及在內存中的位置可以根據需要不斷變化。這就是動態存儲。
『貳』 c語言中靜態儲存和動態儲存是什麼意思
?
:
連起來的意思
我舉個例子吧
int
a
=3;
int
b=
2;
int
c;
if(a>b)?(c=a):(c=b);//意思是如果a>b就執行c=a,否則就執行c=b
類似於下面的語句
if(a>b)
{
c=a;
}
else
{
c
=
b;
}
條件運算符是
?
:
表達式為:表達式1?表達式2:表達式3
表達式2是條件成立(邏輯值為1)時整個表達式的取值
表達式3是條件不成立(邏輯值為0)時整個表達式的值
例如:
m<n?x:a+3
a++>=10
&&
b-->20
?
a
:
b
x=3+a>5
?
100
:
200
優先順序
條件運算符優先順序高於賦值、逗號運算符,低於其他運算符
例如:
⑴
m<n
?
x
:
a+3
等價於:(m<n)
?(x)
:(a+3)
⑵
a++>=10
&&
b-->20
?
a
:
b
等價於:(a++>=10
&&
b-->20)
?
a
:
b
⑶
x=3+a>5
?
100
:
200
等價於:x=
((
3+a>5
)
?
100
:
200
)
結合性
條件運算符具有右結合性
當一個表達式中出現多個條件運算符時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算符的運算對象。
例如:
w<x
?
x+w
:
x<y
?
x
:
y
與
w<x
?
x+w
:
(
x<y
?
x
:
y)
等價
與
(w<x
?
x+w
:
x<y)
?
x
:
y
不等價
----歡迎加入------c++部落------------hello
word!--------
無論你是初學者還是專家,只要你熱愛編程、交流、分享,c++部落因為你而精彩~
『叄』 C語言動態和靜態存儲類別的區別
主要區別在於存儲區域和作用時間。
C語言的數據區分為靜態存儲區與動態存儲區。
靜態存儲是指在程序運行期間給變數分配固定存儲空間的方式。如全局變數存放在靜態存儲區中,程序運行時分配空間,程序運行完釋放。
動態存儲是指在程序運行時根據實際需要動態分配存儲空間的方式。如形式參數存放在動態存儲區中,在函數調用時分配空間,調用完成釋放。
『肆』 計算機中的靜態RAM和動態RAM有什麼區別
區別:動態RAM會周期性的刷新,靜態RAM不進行刷新
1、靜態RAM,指SRAM:只要有供電,它保存的數據就不會丟失,且為高速存儲器,如CPU中的高速緩存(cache)
2、動態RAM,指DRAM:有供電,還要根據它要求的刷新時間參數,才能保持存儲的數據不丟失,如電腦中的內存條

拓展:
1、靜態隨機存取存儲器(SRAM)是隨機存取存儲器的一種。所謂的「靜態」,是指這種存儲器只要保持通電,裡面儲存的數據就可以恆常保持。相對之下,動態隨機存取存儲器裡面所儲存的數據就需要周期性地更新。然而,當電力供應停止時,SRAM儲存的數據還是會消失。
2、DRAM,即動態隨機存取存儲器,最為常見的系統內存。DRAM 只能將數據保持很短的時間。為了保持數據,DRAM使用電容存儲,所以必須隔一段時間刷新一次,如果存儲單元沒有被刷新,存儲的信息就會丟失。
『伍』 靜態內存和動態內存的優缺點
靜態RAM是靠雙穩態觸發器來記憶信息的;動態RAM是靠MOS電路中的柵極電容來記憶信息的。由於電容上的電荷會泄漏,需要定時給與補充,所以動態RAM需要設置刷新電路。但動態RAM比靜態RAM集成度高、功耗低,從而成本也低,適於作大容量存儲器。所以主內存通常採用動態RAM,而高速緩沖存儲器(Cache)則使用靜態RAM。另外,內存還應用於顯卡、音效卡及CMOS等設備中,用於充當設備緩存或保存固定的程序及數據。
『陸』 什麼是動態存儲什麼時候用
存儲器分為內存和外存
內存又分為靜態存儲和動態存儲
動態存儲就是指內存條(這只是我的個人意見)
當你的電腦運行時,硬碟中的信息就會傳到內存條中,然後再傳給CPU處理。也就是說當你的電腦打開後,你的動態存儲器已經開始在用了。
舉個例子:
硬碟就相當於冰箱,內存條就相當於切菜用的案板,CPU就相當於菜刀。要完成某向程序就如同:把材料從冰箱里拿出來,再放到案板上,用刀完成。你所說的那個動態存儲就是案板,是臨時存放你當前打開的程序的。
『柒』 什麼是ram 動態ram和靜態ram的區別是什麼
動態RAM是目前最常用的內存類型。在動態RAM晶元內部,每個內存單元保存一位信息。單元由下面兩部分組成:一個晶體管和一個電容器。當然這些部件都非常地小,因此一個內存晶元內可以包含數百萬個。電容器保存信息位——0或1(有關位的信息,請參見位和位元組)。晶體管起到了開關的作用,能讓內存晶元上的控制線路讀取電容上的數據,或改變其狀態。電容器就像一個儲存電子的小桶。在存儲單元中寫入1,小桶內就充滿電子;寫入0,小桶就被清空。這只「桶」的問題在於:它會泄漏。只需大約幾毫秒的時間,一個充滿電子的小桶就會漏得一干二凈。因此,為了確保動態存儲器能正常工作,必須由CPU或是由內存控制器對所有電容不斷地進行充電,使它們在電子流失殆盡之前保持「1」值。為此,內存控制器會先行讀取存儲器中的數據,再把數據寫回去。這種刷新操作每秒鍾會自動進行數千次。動態RAM正是得名於這種刷新操作。它需要不間斷地進行刷新,否則就會丟失所保存的數據。這一刷新動作的缺點就是費時,並且會降低內存速度。靜態RAM使用了截然相反的技術。靜態RAM用某種形式的觸發器來保存內存的每個位(有關觸發器的詳細信息,請參閱布爾邏輯的應用)。內存單元的觸發器由4個或6個晶體管以及一些線路組成,但從來不需要刷新。這使得靜態RAM比動態RAM要快得多。但是,由於它所含的部件較多,靜態內存單元在晶元上佔用的空間會遠遠超過動態內存單元,使得每個晶元上的內存較小,所以靜態RAM要昂貴得多。靜態RAM速度快但價格高;動態RAM便宜一些,但速度較慢。因而,靜態RAM用於製造CPU中對速度要求比較高的高速緩存,而動態RAM構成較大的系統RAM空間。
『捌』 C\C++中,如何動態的申請存儲空間為程序使用,如要動態申請n個對象(每個對象的類型為DataType)的
C語言:
申請:DataType *p = (DataType*)malloc(sizeof(DataType) * n);
釋放:free(p);
C++:
申請:DataType *p = new DataType[n];
釋放:delete[] p;
『玖』 什麼是動態存儲結構,簡明明了說明一下,。謝謝。
鏈表就是動態存儲結構,不僅在尾部可以增加數據,在中間位置也可以任意增加和刪除!
線性表的鏈式存儲結構,簡稱鏈表,是用一組任意的存儲單元(這組存儲單元可以是連續的,也可以是不連續的)存儲線性表中的數據元素。
因此,為了表示每個數據元素ai與其直接後繼數據元素ai+1之間的邏輯關系,對數據元素ai來說,除了存儲其本身的信息之外,還需存儲一個指示其直接後繼的信息(即直接後繼的存儲位置)。
由分別表示a1,a2,…,an,
的n
個結點依次相鏈構成的鏈表,稱為線性表的鏈式存儲表示,由於此類鏈表的每個結點中只包含一個指針域,故稱為單鏈表或線性鏈表。
『拾』 靜態內存和動態內存有什麼區別,那個好一點
我們一般說的內存都是動態的.SDR DDR等.
在CPU內部的緩存都是靜態的.SRAM.這種內存速度快.價格昂貴.
內存的物理實質是一組或多組具備數據輸入輸出和數據存儲功能的集成電路。內存按存儲信息的功能可分為只讀存儲器ROM(Read Only Memory)、可改寫的只讀存儲器EPROM(Erasable Progrmmable ROM)和隨機存儲器RAM(Random Access Memory)。ROM中的信息只能被讀出,而不能被操作者修改或刪除,故一般用於存放固定的程序。EPROM和一般的ROM不同點在於它可以用特殊的裝置擦除和重寫它的內容,一般用於軟體的開發過程。RAM就是我們平常所說的內存,主要用來存放各種現場的輸入、輸出數據,中間計算結果,以及與外部存儲器交換信息。它的存儲單元根據具體需要可以讀出,也可以寫入或改寫。一旦關閉電源或發生斷電,其中的數據就會丟失。現在的RAM多為MOS型半導體電路,它分為靜態和動態兩種。靜態RAM是靠雙穩態觸發器來記憶信息的;動態RAM是靠MOS電路中的柵級電容來記憶信息的。由於電容上的電荷會泄漏,需要定時給予補充,所以動態RAM需要設置刷新電路。但動態RAM比靜態RAM集成度高、功耗低,從而成本也低,適於作大容量存儲器。所以主內存通常採用動態RAM,而高速緩沖存儲器(Cache)則使用靜態RAM。另外,內存還應用於顯卡,音效卡及CMOS等設備中,用於充當設備緩存或保存固定的程序及數據。
動態RAM按製造工藝的不同,又可分為動態隨機存儲器(Dynamic RAM)、擴展數據輸出隨機存儲器(Extened Data Out RAM)和同步動態隨機存儲器(Sysnchromized Dynamic RAM)。
