-
關於第二個問題,我就不多說了。
我認為第乙個問題的答案是 d當然我也除錯過,我的除錯環境是,除錯結果輸出是65536,因為vc中預設的int被識別為long int型別,所以輸出沒有錯。 但這只是乙個孤立的現象。
如果從軟體開發的角度來看這個問題,答案只有
由於 C 語言非常靈活,因此它可以在任何支援它的平台上執行。 所以這裡不是程式設計win32的問題。 由於C語言型別在其他平台(如4位計算機、8位計算機、16位計算機)上的大小不盡相同,因此它們的int型別大小也不盡相同,這就需要在程式設計時使用sizeof函式來檢查每種型別的大小,以便合理分配記憶體。
在 32 位機器中,int 型別為 4 位,即 2 的 16 次方 -1,; 在 32 位計算機中,最大正向值為 65535,而在這個問題中,i 的值被賦值給 65536,這已經超出了 int 的最大儲存範圍,所以編譯器必須警告它,並且沒有輸出結果。
樓上的答案是0我不同意這個說法,編譯器不會直接跳過檢測,產生編譯結果(這是大學編譯原理課教的),因為編譯器是先掃瞄**,出現越界或語法錯誤時,不會編譯。
-
以上都是錯的,第乙個問題的答案是b是0,因為int型別的範圍是-32768 32767,當輸入數大於32767時,會從最後開始計數,即32768等價於-32768,32768 32767 65535,所以65535等價於0, 我已經除錯過了,絕對正確。
以上問題沒問題,int除法四捨五入,即只有商,不管餘數如何,都是0
兩個問題都是 0
-
第乙個是0,沒什麼好說的,在自己的機器上試試就行了。
第二個是 1b (b*2)=2 (2*2)=2 4=,但是如果你將 b 定義為 int,計算機會將其四捨五入,即 1,答案是 1!
-
1.有語法錯誤,沒有輸出(int 高達 65535)。
答案是 1 2,但 int 無法識別小數位,所以它是 0)。
-
正確選擇:s[5] 正好儲存了 abcde 的五個字元。
A False:溢位。 “ABCDE”後跟乙個'\0',共 6 個字元。
C 錯了,D 錯了:char* 指標 s 沒有分配空格。
-
++x 是先計算 x,然後再使用。
首先使用 x++,然後計算。
例如,x=1、y=x++、y=1、x=2
例如,x=1、y=++x、y=2、x=2
-
你在樓上說的不對。
不定積分定理 3
在區間 d 中函式的所有原始函式中,任意兩個原始函式之間只有乙個常數差。
設 f'(x)=f(x), x)=f(x),則 [ (x)-f(x)]'= '(x)-f'(x)=f(x)-f(x)=0 從“乙個在區間內導數為常數零的函式必須是常數”,(x)-f(x)=c0(c0 是乙個常數)。
所以 A 是對的......
但我覺得B和C也是對的......
所以我對這個問題有點困惑。
使用指標來改變它的值,你的程式只是呼叫了要交換的函式中的區域性變數,呼叫函式後就釋放了變數,整個程式根本不會改變原來的數字,只有通過傳遞指向位址的指標才能得到變數的位址。 >>>More