C語言問題,高手請指教

2022-06-10 12:17:42 字數 565 閱讀 7799

1樓:遇淑蘭谷環

是這樣的

首先指出你的兩個錯誤,我不知道你的目的,但可以看出

你是想對指標p程序+=執行,你題目中所寫的方法是不行的在沒加*前p所代表的是位址

加*以後代表的是p所指記憶體的具體值,你那個式子實際上是在對p在記憶體中的位址加了3

還有你說兩個式子的區別

首先明確一點在offest做了初始化3以後那麼offest實際上就是3

但是在從底層來看就有所不同,變數名在程式進行編譯的時候就將其變成了位址進行處理,在運算的時候會有乙個對位址裡的內容有乙個讀取的過程,而直接把3賦值給某一變數就不會出現對位址內容的讀取,而是接著的把3放進該變數所在的記憶體空間

2樓:葛蕾邊申

常量和變數的區別

1,效率:常量在編譯的時候,可以以立即數形式編譯進指令,比起使用使用記憶體的變數要高效。

2,約束:定義成常量,可以避免程式在執行中給它錯誤賦值,不要小看這種約束,給常量賦值的錯誤是很容易犯的,編譯器會立即告訴你不對。

3,語法:定義陣列大小等,是因為編譯時候要確定分配的空間,這時必須使用常量。

請高手解答C語言問題,謝謝

define是巨集替換,執行之前是先替換,然後執行的 define x 5 define y x 1 define z y x 2 main z換成y x 2 x 1 x 2 5 1 5 2 5 2 7輸出7,6 驀然回首時 z y x 2 x 1 x 2 5 1 5 2 7 a y x 1 5 1...

c語言習題請高手幫忙解答,C語言習題請高手幫忙解答。

1 沒答案,應該是a2,b 5 2 a3 沒答案,因為 u輸出a的值不確定4 a5 c 6 b7 沒答案,應該是scanf f c 8 c9 b 1 沒答案如為printf a d,b d n a,b 選 d a d,b d 2 b3 c 4 c5 c 6 d7 a 我想答案應該是scanf f c...

戀愛高手請指教戀愛高手請指教

沉默,如果你夠愛她 就應該學著相信她,雖然對方可能可信度不高,但是如果都要結婚了,雙方連基本的信任都沒有,那以後怎麼辦呢?如果不愛,那藉此放手也好 永遠都要相信一句話,男人不壞,女人不愛 裝作什麼都不知道,繼續看女友的表現吧!如果你跟女友談,女友就知道你看了聊天記錄,對你產生反感,也許就把女友推向另...