久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁  >  技術(shù)干貨  > 結(jié)構(gòu)體變量做函數(shù)參數(shù),使用引用和不用引用有什么區(qū)別?

        結(jié)構(gòu)體變量做函數(shù)參數(shù),使用引用和不用引用有什么區(qū)別?

        來源:千鋒教育
        發(fā)布人:xqq
        時(shí)間: 2023-10-11 07:36:27 1696980987

        一、結(jié)構(gòu)體變量做函數(shù)參數(shù),使用引用和不用引用的區(qū)別

        引用實(shí)際上是變量別名。效果等同于操作原對(duì)象。不傳引用新建了一個(gè)Stack副本,副本指針的改變不影響原變量,里面的指針永遠(yuǎn)指向最初的地址,導(dǎo)致每次只是把這塊內(nèi)存的值從a改到b而沒有實(shí)現(xiàn)自增。

        結(jié)構(gòu)作為函數(shù)參數(shù)的三種傳遞方式

        1.傳遞結(jié)構(gòu)成員

        2.傳遞結(jié)構(gòu)

        3.傳遞結(jié)構(gòu)的地址

        ===================================

        //1.傳遞結(jié)構(gòu)成員

        #include

        #include

        //花唄還款簡單舉例

        struct account

        {

        ??? char * bankName;??? //銀行名稱

        ??? char * userName;??? //用戶名稱

        ??? double limit;?????? //賬戶當(dāng)前可用額度

        ??? double max;???????? //賬戶總額度

        };

        //計(jì)算并返回當(dāng)月應(yīng)還款數(shù)

        double payFor(double m1,double m2)

        {

        ??? return m2-m1;

        }

        int main()

        {

        ??? //初始化數(shù)據(jù)

        ??? struct account BOC;

        ??? BOC.bankName=”中國銀行”;

        ??? BOC.userName=”馬小云”;

        ??? BOC.max=10000;

        ??? BOC.limit=1562;

        ??? double result=payFor(BOC.limit,BOC.max);

        ??? printf(“用戶應(yīng)還款%.2lf元,截至下月9日之前不算利息!\n”,result);

        }

        //2.傳遞結(jié)構(gòu)

        //結(jié)構(gòu)體定義不變,后面照下面修改

        //計(jì)算并返回當(dāng)月應(yīng)還款數(shù)

        double payFor(struct account accounts)

        {

        ??? return accounts.max-accounts.limit;

        }

        int main()

        {

        ??? //初始化數(shù)據(jù)

        ??? struct account BOC;

        ??? BOC.bankName=”中國銀行”;

        ??? BOC.userName=”馬小云”;

        ??? BOC.max=10000;

        ??? BOC.limit=1562;

        ??? double result=payFor(BOC);

        ??? printf(“用戶應(yīng)還款%.2lf元,截至下月9日之前不算利息!\n”,result);

        }

        //3.傳遞結(jié)構(gòu)的地址??

        //計(jì)算并返回當(dāng)月應(yīng)還款數(shù)

        double payFor(const struct account *accounts)??? //因?yàn)橹羔樦赶蚩梢愿淖?,所以此處加上const起保護(hù)作用。

        {

        ??? return accounts->max-accounts->limit;

        }

        int main()

        {

        ??? //初始化數(shù)據(jù)

        ??? struct account BOC;

        ??? BOC.bankName=”中國銀行”;

        ??? BOC.userName=”馬小云”;

        ??? BOC.max=10000;

        ??? BOC.limit=1562;

        ??? double result=payFor(&BOC);

        ??? printf(“用戶應(yīng)還款%.2lf元,截至下月9日之前不算利息!\n”,result);

        }

        延伸閱讀:

        二、結(jié)構(gòu)體參數(shù)調(diào)用歸納

        1)結(jié)構(gòu)體變量作為函數(shù)參數(shù)[實(shí)參與形參]時(shí),形參結(jié)構(gòu)體變量成員值的改變不影響對(duì)應(yīng)的實(shí)參構(gòu)體變量成員值的改變。

        2)結(jié)構(gòu)體數(shù)組或結(jié)構(gòu)體指針變量作為函數(shù)參數(shù)[實(shí)參與形參]時(shí),形參結(jié)構(gòu)體數(shù)組元素[或形參結(jié)構(gòu)體指針變量指向的變量]成員值的改變將影響對(duì)應(yīng)的實(shí)參構(gòu)體數(shù)組[或?qū)崊⒔Y(jié)構(gòu)體指針變量指向的變量]成員值的改變。

        3)結(jié)構(gòu)體變量可作為函數(shù)的參數(shù),函數(shù)可返回一結(jié)構(gòu)體類數(shù)據(jù)

        4)p=&b; 使結(jié)構(gòu)體指針變量p指向結(jié)構(gòu)體變量b的空間。

        p->num:表示通過指針變量引用結(jié)構(gòu)體變量b的成員num

        5)p=a;或p=&a[0];將結(jié)構(gòu)體指針變量指向結(jié)構(gòu)體數(shù)組a。則:

        ①p->num:表示通過指針變量引用結(jié)構(gòu)體數(shù)組元素的成員num的值。

        ②p->num++:表示通過指針變量先引用結(jié)構(gòu)體數(shù)組元素的成員num的值,再使該元素的成員num的值加 1,先引用其值然后其加1。

        ③++p->num:表示使指向的元素的成員num的值加1,再引用其值。

        6)p=a;或p=&a[0];表示將結(jié)構(gòu)體指針變量p指向結(jié)構(gòu)體數(shù)組a。

        ①(p++)->num:表示通過指針變量先引用結(jié)構(gòu)體數(shù)組元素? 的成員num的值,再使指針變量本身加1,指針變量加1表示使指針變量指向結(jié)構(gòu)體數(shù)組的下一個(gè)元素。

        ②(++p)->num:先使指針變量本身加1,先使使指針變量指向結(jié)構(gòu)體數(shù)組的下一個(gè)元素,然后引用指針變量所指向的結(jié)構(gòu)體數(shù)組元素的成員num的值。

        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        數(shù)據(jù)結(jié)構(gòu)里的間界疊加是什么意思?

        一、數(shù)據(jù)結(jié)構(gòu)里的間界疊加數(shù)據(jù)結(jié)構(gòu)里的間界疊加是間界疊加:從一端到另一端沿各部分分界來回折疊后,最后一位對(duì)齊相加。如:key=2534635870三位...詳情>>

        2023-10-11 09:22:37
        軟件架構(gòu)如何能夠滿足ASPICE流程?

        一、軟件架構(gòu)如何能夠滿足ASPICE流程架構(gòu)的用途是把整個(gè)產(chǎn)品劃分為更為細(xì)節(jié)的板塊:軟件、硬件、通信等。在這個(gè)基礎(chǔ)上軟件整體將按照用途、功能...詳情>>

        2023-10-11 08:47:00
        紅黑樹為什么叫紅黑樹?

        一、紅黑樹叫紅黑樹的原因紅黑樹(Red-Black Tree)是一種自平衡的二叉搜索樹(Binary Search Tree),其在插入和刪除操作時(shí)能夠自動(dòng)調(diào)整樹的結(jié)...詳情>>

        2023-10-11 08:42:41
        為什么數(shù)組索引數(shù)據(jù)那么快速、有效?

        一、數(shù)組索引數(shù)據(jù)快速、有效的原因1、連續(xù)內(nèi)存存儲(chǔ)數(shù)組在內(nèi)存中是連續(xù)存儲(chǔ)的,數(shù)組的元素在內(nèi)存中按照一定的順序排列,相鄰元素之間沒有間隔。...詳情>>

        2023-10-11 08:36:19
        數(shù)據(jù)結(jié)構(gòu)里的逐點(diǎn)插入法、排序二叉樹是什么?

        一、數(shù)據(jù)結(jié)構(gòu)里的逐點(diǎn)插入法、排序二叉樹逐點(diǎn)插入法三角剖分是一種研究方法。三角剖分≠TIN三角剖分是代數(shù)拓?fù)鋵W(xué)里最基本的研究方法。 以曲面為...詳情>>

        2023-10-11 08:08:01
        快速通道
        临海市| 漯河市| 普格县| 仙桃市| 台南市| 安泽县| 福州市| 达拉特旗| 延安市| 商都县| 上林县| 临颍县| 苍溪县| 巨野县| 扬州市| 长顺县| 温州市| 富锦市| 徐闻县| 扎鲁特旗| 叙永县| 弋阳县| 大渡口区| 泸西县| 临泉县| 星子县| 门源| 蕲春县| 杭州市| 和静县| 梨树县| 登封市| 化隆| 静宁县| 芜湖市| 白河县| 金门县| 大城县| 五峰| 丰原市| 友谊县|