關於sizeof的最大值問題

2021-04-13 02:15:34 字數 473 閱讀 7495

sizeof的返回值是size_t,而size_t是unsigned int,那麼是不是說sizeof的返回值就是從0~4g呢?

linux gcc 實測:

sizeof(struct)在超出512m 時,將會溢位,只能得到超出部分的值

比如有乙個(512m+1)大小的struct,那麼你將會只得到1!

但是具體原因我還沒有搞清楚,google了一把也沒有收穫,哪位高手知道,煩請告知一聲,多謝~

其他平台尚未測試,等測過了再說。

另乙個關於sizeof的話題:

許多編譯器對sizeof的計算是在編譯期的,所以我們可以把sizeof當作乙個常量來定義陣列:

char arrchar[ sizeof(struct sta) ];

gcc下測試過了可以,不過它是肯定是可以通過的,因為gcc支援c99,而c99允許用變數指定陣列長度,其他編譯器下也要測試了再貼。

最大值最小值問題

看了不是很懂,先把別人的 放著,日後在研究。程式8 3 5.cpp 定義控制台應用程式的入口點。include stdafx.h 目標學會用猜數字 二分 的方法,換個角度來解決問題 include include includeconst int maxn 100000 int a maxn n,m...

滑動視窗的最大值 佇列的最大值

請定義乙個佇列並實現函式max得到佇列裡的最大值,要求函式max push back和 pop front的時間複雜度都是o 1 在佇列中維護乙個儲存最大值的佇列,當pop和push操作的同時也對最大值佇列進行維護。當彈出的時佇列中的最大值時,也彈出最大值佇列的頭,當壓入新值時,對最大值佇列從後向前...

最小距離最大值問題

def check2 a,m,x k,c 0,0 for i in range 1,len a if a i a k x 當前距離小於x,刪除元素a i c 1 else 當前距離不小於x,更新左邊界 k i return c m def distance a,m left,right,ans 1,...