1樓:
這兩個程式都只有乙個主函式,當你需要呼叫函式的時候,就涉及到引數傳遞的問題了。這時如果你要在呼叫的函式中直接改變實參的值的話,引數傳遞就必須傳遞位址,也就是要用到指標了。如果你只是傳遞引數值的話,在呼叫的函式中,會為形參分配臨時的儲存空間,把實參的值傳遞給它,也就是說傳遞的只是值。
可能你是剛開始接觸c語言吧?自定義函式基本上是每個程式都會用到的,函式的引數傳遞經常是要用到指標的。指標是很好用的,程式設計經常會使用的,高效且直接。
2樓:匿名使用者
1:變數是以位址的方式儲存的,也就是說知道位址就可以修改變數。
所以通過指標指向對應位址,就可以修改變數值。
2:指標的好處,你可以查閱相關資料,說的很詳細。
在編寫上千,上萬行**時可以看出其執行效率高。
用指標操作,執行快。如果你用陣列,就會占用很多記憶體空間。
3:另外你可以看下陣列與指標的關係。就會發現指標的特點與優點。
3樓:齊人二們老小林
指標能儲存的是資料所在的記憶體位址,利用指標就能對位址進行操作,而其它不行,這樣指標在一定條件下,好處不言而喻。
4樓:匿名使用者
在這個對比中,指標沒什麼好處,反而會使程式看起來複雜。
指標很強大,但不是體現在這兒,如果你用指標去構造複雜的資料結構,你就會發現它的靈活和強大。
C語言指標問題,C語言指標問題
這個演算法最後的時候 p和q都是指向a的,在最後這個時候a的結構是,q之前的是所有的除了版 之外權 的字元。q之後的都是原來a裡面的資料,對於這個時刻是髒資料。最後把q指向的那個位置賦值為 0可以在遍歷a的時候,不遍歷到髒資料,而這個時候p正好指向的就是 0,所以 q p 迴圈結束條件是 p 0,因...
C語言這個F函式再指標C語言指標問題
28f為傳值呼叫。所以f中的修改不影響main中變數的值。輸出的還是原始值。即 4,3,5 選d29 a 4b a q b w q b q null a q 0 由於q已經賦值為null,再對 q賦值會引起程式崩潰。這個不對 b w p 指標間賦值,正確。c p a 也就是a a 正確。d p w ...
C語言NULL指標問題,C語言空指標是怎麼回事
不知道你用的系統和gcc的版本是什麼?在我所使用的linux工作站以及freebsd工作站上均未出現此問題,輸出均為 null 字串,在soliras系統上測試,兩個結果均為段錯誤,沒有出現你所說的現象。出現段錯誤的原因有 1 引用乙個包含非法值的指標 例如空指標。2 未得到正確的許可權的時候進行訪...