久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1738|回復(fù): 9
打印 上一主題 下一主題
收起左側(cè)

關(guān)于C語言函數(shù)返回值的問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:705806 發(fā)表于 2023-6-5 15:50 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
我在查看公司的項目的時候發(fā)現(xiàn)有以下代碼

#include "system.h"
static uint16_t Motor_Time_Max = 0;

void Set_Motor_Time(uint16_t time)
{
Motor_Time_Max = time;
}
uint16_t Get_Motor_Time(void)
{
uint16_t time = Motor_Time_Max ;
return time;
}

關(guān)于Get函數(shù) ,我嘗試了直接返回沒有任何區(qū)別 ,為什么以前的要弄一個新變量來返回呢?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:752974 發(fā)表于 2023-6-5 16:21 | 只看該作者
編譯器優(yōu)化的問題,再者還有程序設(shè)計者的習(xí)慣。
回復(fù)

使用道具 舉報

板凳
ID:883242 發(fā)表于 2023-6-5 16:30 | 只看該作者
作者可能以前是寫C#的,這么寫在c語言里面只能增加最終機器碼的復(fù)雜度,沒有任何好處,除非能把這兩個函數(shù)聲明成inline函數(shù)。
回復(fù)

使用道具 舉報

地板
ID:647261 發(fā)表于 2023-6-5 16:39 | 只看該作者
其實沒怎么看明白你的意思
我說一下返回不返回的區(qū)別:
Motor_Time_Max是全局變量,調(diào)用Set_Motor_Time()時,Motor_Time_Max的值可以被其他函數(shù)調(diào)用,類似于返回了Motor_Time_Max的值
在Get_Motor_Time(void)中,time是局部變量,不加return time的話,time的值是不能被其他函數(shù)調(diào)用的。加上return time,Get_Motor_Time()可以當成一個數(shù)來用。
比如,你可以寫a = Get_Motor_Time() +b;但是不能寫a = Set_Motor_Time() +b;要改成a = Motor_Time_Max+b;
回復(fù)

使用道具 舉報

5#
ID:879348 發(fā)表于 2023-6-5 16:49 | 只看該作者
我也習(xí)慣返回局部變量,不會返回全局變量
回復(fù)

使用道具 舉報

6#
ID:1045628 發(fā)表于 2023-6-5 17:07 | 只看該作者
高級語言的書寫習(xí)慣,各種get、set用的飛起
回復(fù)

使用道具 舉報

7#
ID:705806 發(fā)表于 2023-6-5 17:26 | 只看該作者
Hephaestus 發(fā)表于 2023-6-5 16:30
作者可能以前是寫C#的,這么寫在c語言里面只能增加最終機器碼的復(fù)雜度,沒有任何好處,除非能把這兩個函數(shù) ...

我們都是純C的好像不能用inline吧
回復(fù)

使用道具 舉報

8#
ID:705806 發(fā)表于 2023-6-5 17:28 | 只看該作者
sttt300 發(fā)表于 2023-6-5 16:39
其實沒怎么看明白你的意思
我說一下返回不返回的區(qū)別:
Motor_Time_Max是全局變量,調(diào)用Set_Motor_Time() ...

這是一個類似于lib的東西  我找到的源碼就是這樣的 然后能看到可以直接直接使用的就只有Get 和Set函數(shù)
回復(fù)

使用道具 舉報

9#
ID:705806 發(fā)表于 2023-6-5 17:29 | 只看該作者
munuc_w 發(fā)表于 2023-6-5 16:21
編譯器優(yōu)化的問題,再者還有程序設(shè)計者的習(xí)慣。

好的  謝謝!
回復(fù)

使用道具 舉報

10#
ID:883242 發(fā)表于 2023-6-5 17:37 | 只看該作者
羽翼之凋零 發(fā)表于 2023-6-5 17:26
我們都是純C的好像不能用inline吧

c語言都支持inline,但是inline并不是c語言標準關(guān)鍵字,所以要查編譯器手冊看看應(yīng)該怎么寫。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品国产乱码久久久久久果冻传媒 | 国产日韩一区二区 | 精品伊人| 成人精品啪啪欧美成 | 欧洲一区二区三区 | 日韩精品免费在线观看 | 午夜激情免费 | 亚洲天堂成人在线视频 | 九色在线视频 | 国产精品久久久久久久岛一牛影视 | 亚洲一区自拍 | 99色在线| 欧美精品一区在线发布 | 久久久.com | 日韩精品一区二区三区四区 | 国产高清一区二区 | 久久er99热精品一区二区 | 久久久久亚洲精品 | 日韩av一区二区在线 | 成人精品一区二区三区中文字幕 | av播播 | 日韩久草 | 亚洲v日韩v综合v精品v | 欧美日韩精品免费 | 免费午夜视频 | av网站观看| 91免费高清| 97国产精品 | 中文av电影 | 免费一级黄色电影 | 在线观看亚洲精品视频 | 福利视频网址 | 日本不卡一区 | 黑人巨大精品欧美一区二区免费 | 午夜在线观看免费 | 成人网av | 亚洲国产成人精品女人 | 国产999精品久久久久久 | 午夜av毛片| 一区二区国产精品 | 日韩毛片中文字幕 |