C語言可以精確執行1億次(for迴圈小於1億),為什麼卻不能存100000000這個數值?

時間 2021-05-12 01:21:12

1樓:Grharris

可能是編譯器的問題或者是資料型別的問題,反正g++編譯器用int是完全沒有問題的。

送題主一句OI常用語:

多年OI一場空,不開long long見祖宗

2樓:Exc3lsior

int 的儲存範圍可以用這個公式表示:[- 1 << x - 1, (1 << x-1) - 1],為什麼是x - 1呢,是因為有符號整型數的最高位被符號占用了 ,那麼無符號整型數的範圍公式是[0, (1 << x) - 1] .

所以,16位機的儲存範圍是 [- 32768 , 32767].

32位機的儲存範圍是 [-2147483648, 2147483647]

手機上的位運算符號左移符號以及以後的內容會被吃掉……

3樓:薛非

為什麼卻不能存***這個數值?誰告訴你不能存的?

不問是不是,就問為什麼。

知乎的水準已經夠low了,

麻煩不要再繼續拉低了好麼

4樓:RednaxelaFX

沒、沒看明白問題。不能存***麼?

#include

#include

intmain

()看了後面的回答才知道原來題主可能是中了Turbo-C的槍orz這年頭能sizeof(int) == 2的地方還是挺坑的…能用stdint.h裡的新整數型別就別用老的那些啦。

C語言可以幹些什麼?C語言主要涉及哪些IT領域?

runner time 一般人靠學C語言去工作比較難,但是學習C語言能幫你更深入地理解作業系統的底層,為進一步學習研究作業系統打下基礎。計算機學習是乙個系統性問題,不可偏廢。比如說光學程式語言但是不學數學,一定會遇到明顯的瓶頸。作業系統當然也是必然要深入的領域。而且很多語言的設計思路借鑑了C語言,可...

C語言能否控制某程式的執行時間呢

譚敘 嗯 不能精確控制,但可以粗略控制。不知道題主了解作業系統有多少。所有程式執行都是由作業系統核心控制的,是在不同的程序中的。所以處於使用者態的一般程式也只能通過核心影響其它程序的執行。於是就會出現程序被排程上CPU,和排程下CPU的情況。所以你不能夠控制你自己的程式在到時間的時候恰好在CPU上面...

C語言有沒有簡單的方法,能讓函式中執行return之後,再次再執行另外一段命令?

典型的AOP操作。比較有共識的實現方式是函式巢狀來實現,就是外函式做你說的那些額外功能,內函式實現主要的計算邏輯。當然c的話還可以用巨集等奇技淫巧。但是你說簡單的話那估計不行 gcc 可以用 attribute cleanup fn int var 實現。這個類似於給 var 加了個析構函式 fn。...