国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

為什么要內(nèi)存對齊 內(nèi)存對齊的目的和規(guī)則?

內(nèi)存對齊的目的和規(guī)則?有四種內(nèi)存對齊原則:1)。數(shù)據(jù)成員對齊規(guī)則:結構(或聯(lián)合)的數(shù)據(jù)成員。第一個數(shù)據(jù)成員放置在偏移量為0的位置。之后,每個數(shù)據(jù)成員存儲的起始位置從該成員大小或其子成員大小的整數(shù)倍開始

內(nèi)存對齊的目的和規(guī)則?

有四種內(nèi)存對齊原則:

1)。數(shù)據(jù)成員對齊規(guī)則:結構(或聯(lián)合)的數(shù)據(jù)成員。第一個數(shù)據(jù)成員放置在偏移量為0的位置。之后,每個數(shù)據(jù)成員存儲的起始位置從該成員大小或其子成員大小的整數(shù)倍開始(只要該成員有子成員,如數(shù)組、結構等)(例如,在32位計算機中int為4字節(jié),則應從4的整數(shù)倍地址開始存儲)?;绢愋筒话╯truct/class/Uinon。

2) . struct as member:如果一個結構中有一些結構成員,那么應該從結構中“最寬的基本類型成員”的整數(shù)倍地址存儲結構成員。(結構a包含結構B,而B包含char、int、double和其他元素,那么B應該從8的整數(shù)倍存儲。)。

3) . 收尾工作:結構的總尺寸,即sizeof的結果,必須是結構內(nèi)部最大構件的“最寬基本型構件”的整數(shù)倍。彌補不足。(基本類型不包括struct/class/Uinon)。

4) . sizeof(Union),結構中最大的元素是Union的大小,因為在特定時間,只有Union的一個成員實際存儲在地址中。

內(nèi)存對齊的規(guī)則?

為了加快計算機的訪問速度,編譯器在默認情況下對內(nèi)存進行字節(jié)對齊。結構(包括類)字節(jié)對齊的原則如下:

1)結構變量的第一個地址可以除以其最寬的基本類型成員的大小;

2)結構的每個成員相對于結構的第一個地址的偏移量是成員大小的整數(shù)倍。如果需要,編譯器將在成員之間添加內(nèi)部加法;

3)結構的總大小是結構最寬基本類型成員大小的整數(shù)倍。如果需要,編譯器將在最后一個成員之后添加尾隨填充。Structsbyte1{double//offset 0~7charj//offset 8inta//offset 12~15,因為9不能被4除,請先填寫9~11}sizeof(sbyte1)//=16structsbyte2{charj//offset 0double//offset 8~15,因為1不能被8除,請先填寫1~7inta//offset 16~19}sizeof(sbyte2)//=24,為了做一個8的倍數(shù),填20~23

大家好,我是蘭幫子,個人網(wǎng)站的小站長,畢業(yè)于機械專業(yè),轉(zhuǎn)向互聯(lián)網(wǎng),喜歡拋擲技術。

雖然我沒有寫太多的代碼,但我以前讀過一段,想和大家分享,哈哈

!一個程序員接錯了代碼,程序員看了代碼很頭疼,因為沒有注釋行,然后偷偷地罵:這個程序是誰寫的?沒有筆記。我必須把結構分成不同的層次。越想越委屈。但看著它,他覺得代碼越來越熟悉了。是的,這個節(jié)目是他寫的。哈哈

!因此,必要的注釋對于代碼是非常必要的。如果你想到那個程序員,你甚至認不出你寫的程序。另一個程序員接手不是更有效嗎?

雖然我寫的代碼不多,但我偶爾會修改站點構建系統(tǒng)上的一些模板文件。帶注釋的代碼組織得非常好??雌饋聿粌H賞心悅目,而且更容易找到錯誤的代碼。我認為對于編寫程序的人來說,要高效地編寫代碼,必要的注釋是必不可少的!