打印
[综合信息]

关于返回值类型为void的函数的返回值

[复制链接]
1277|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2023-5-24 09:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我对C语言比较熟悉而嵌入式了解不多。今天和一个嵌入式开发讨论C语言的时候遇到一个这样的问题。



  • void f(){}

[color=rgb(51, 102, 153) !important]复制代码





对于一个返回值类型为void的函数
我认为这个函数是没有返回值。
而那个嵌入式开发却认为所有函数都有返回值,包括void函数。
只是void函数不返回。
很拗口很难理解,既然不返回又怎么会有返回值。
而我不管是查看汇编还是查教科书,都无法找到有返回值但不返回的描述。
这个嵌入式开发一直强调嵌入式中这是常识。

无奈之下,来到这个论坛请教各位嵌入式前辈。
请问,void f(){}这样的函数是没有返回值,还是有返回值而不返回?

使用特权

评论回复

相关帖子

沙发
ufbycd| | 2023-5-25 13:15 | 只看该作者
建议:要么复习下C语言基础,要么研究下哲学。
void 表示虚无,返回值是虚无,那到底有没有返回呢?这个哲学思想引人深思!

使用特权

评论回复
板凳
lzbf| | 2023-6-8 07:16 | 只看该作者
如果函数没有返回值,那么应声明为void类型;如void main(),指主函数中没有涉及到返回值问题。

使用特权

评论回复
地板
lzbf| | 2023-6-8 13:07 | 只看该作者
在编写这类函数时,需要仔细考虑其功能和语义,并使用注释等方式来说明其作用和约束条件。

使用特权

评论回复
5
belindagraham| | 2023-6-8 13:26 | 只看该作者
返回值类型为void*是什么意思

使用特权

评论回复
6
maudlu| | 2023-6-8 13:39 | 只看该作者
void是不是没有返回值?               

使用特权

评论回复
7
cashrwood| | 2023-6-8 13:45 | 只看该作者
如果在函数体中使用了return语句,则其后面不允许跟任何表达式或变量,否则会导致编译错误。

使用特权

评论回复
8
uptown| | 2023-6-8 13:55 | 只看该作者
返回值类型为void的函数没有返回值,它通常用于执行某些操作或修改某些状态,而不需要向调用者返回具体的数值或数据。

使用特权

评论回复
9
sheflynn| | 2023-6-8 14:28 | 只看该作者
返回值类型为void的函数没有具体的返回值,但是它们可以通过修改指针参数或全局变量等方式来影响程序的状态和行为。

使用特权

评论回复
10
zerorobert| | 2023-6-8 14:40 | 只看该作者
void类型的函数,其返回值能是小数么?

使用特权

评论回复
11
kkzz| | 2023-6-8 14:49 | 只看该作者
c语言中void函数的返回值,是怎么回事

使用特权

评论回复
12
qiufengsd| | 2023-6-8 15:06 | 只看该作者
在调用返回值类型为void的函数时,程序会执行函数体中的语句,并在函数执行完毕后返回到函数调用点。

使用特权

评论回复
13
dspmana| | 2023-6-8 15:34 | 只看该作者
返回值类型为void的函数在程序中扮演着重要的角色,可以用于执行各种任务和操作

使用特权

评论回复
14
tpgf| | 2023-6-9 11:24 | 只看该作者
void的字面意思是“无类型”,void*则为“无类型指针”,void*可以指向任何类型的数据

使用特权

评论回复
15
guanjiaer| | 2023-6-9 11:45 | 只看该作者
void真正发挥的作用在于:(1)对函数返回的限定;(2)对函数参数的限定

使用特权

评论回复
16
heimaojingzhang| | 2023-6-9 12:08 | 只看该作者
在vs2022中,sizeof(void)=0

在Linux中,sizeof(void)=1(但编译器依旧理解成,无法定义变量)

使用特权

评论回复
17
keaibukelian| | 2023-6-9 13:13 | 只看该作者
void无法开辟空间,那么也就无法作为正常变量使用,既然无法使用,编译器干脆不让void定义变量

使用特权

评论回复
18
paotangsan| | 2023-6-9 13:35 | 只看该作者
void作为函数返回值,代表不需要,这里是一个"占位符"的概念,是告知编译器和给阅读源代码的工程师看的。

使用特权

评论回复
19
renzheshengui| | 2023-6-9 13:52 | 只看该作者
如果一个函数没有参数,将参数列表设置成void,是一个不错的习惯,因为可以将错误明确提前发现,另外阅读你代码的人,也一眼看出,不需要参数,相当于“自解释”

使用特权

评论回复
20
鹿鼎计| | 2023-8-3 12:14 | 只看该作者
Void类型的函数,返回值是小数吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1289

主题

3509

帖子

0

粉丝