1. 程式人生 > >函數可以返回結構體的原因

函數可以返回結構體的原因

保存 用戶 body 值傳遞 detail 首地址 div 地址傳遞 tail

C 語言中函數返回結構體時如果結構體較大, 則在調用函數中產生該結構的臨時變量,並將該變量首地址傳遞給被調用函數,被調用函數返回時根據該地址修改此臨時變量的內容,之後在調用函數中再將該變量復制給用戶定義的變量,這也正是 C 語言中所謂值傳遞的工作方式。
如果結構體較小, 則函數返回時所用的臨時變量可保存在寄存器中,返回後將寄存器的值復制給用戶定義的變量即可。

http://blog.csdn.net/guoqianqian5812/article/details/46708177

函數可以返回結構體的原因