課程
/后端開發(fā)
/C
/Linux C語言指針與內存
就是老師的那個代碼
2016-09-30
源自:Linux C語言指針與內存 2-1
正在回答
a,b使用指針,然后將地址傳遞過去。
因為change函數使用了void類型,void類型的有一個作用是無返回值的,表示該函數沒有返回值,也就是說在change函數內部即使你把a和b的值互換了,但也只是對于這個函數本身,并不能影響到main函數的。
要使用指針,然后地址傳遞。
簡單的說就是作用域導致此a非彼a。雖然變量名字都是a,但一個適用范圍在函數里,另一個適用范圍在主函數里。想要實現的話需要聲明全局變量。推薦你用vs2013調試一下,看的比較直觀。
因為函數參數的傳遞方式是單向值傳遞造成的。
調用 chang() 函數時,將實參 a 和 b 的值對應傳遞給形參 a 和 b,形參 a 和 b獲得初值。當 chang() 函數執(zhí)行結束,返回主函數時,形參 a和b 的內存空間被釋放,即形參 a 和 b 不在存在。但是形參的值并沒有傳遞給實參 a 和 b,所以實參 a 和 b 的值仍然是他們的初始值。
舉報
指針-C語言的核心,代領大家對c語言有更加深刻的理解
1 回答為什么是先聲明a,在i ,最后b
3 回答我的a,b未賦值是為什么不是默認的0?
2 回答為什么第一個p a p b是輸出的值第二次輸出它的地址呢?
1 回答為啥地址中是a i b這種格式啊。
3 回答那個交換a,b數值的程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-06-04
a,b使用指針,然后將地址傳遞過去。
2017-03-07
因為change函數使用了void類型,void類型的有一個作用是無返回值的,表示該函數沒有返回值,也就是說在change函數內部即使你把a和b的值互換了,但也只是對于這個函數本身,并不能影響到main函數的。
2016-10-01
要使用指針,然后地址傳遞。
2016-09-30
簡單的說就是作用域導致此a非彼a。雖然變量名字都是a,但一個適用范圍在函數里,另一個適用范圍在主函數里。想要實現的話需要聲明全局變量。推薦你用vs2013調試一下,看的比較直觀。
2016-09-30
因為函數參數的傳遞方式是單向值傳遞造成的。
調用 chang() 函數時,將實參 a 和 b 的值對應傳遞給形參 a 和 b,形參 a 和 b獲得初值。當 chang() 函數執(zhí)行結束,返回主函數時,形參 a和b 的內存空間被釋放,即形參 a 和 b 不在存在。但是形參的值并沒有傳遞給實參 a 和 b,所以實參 a 和 b 的值仍然是他們的初始值。