函数返回值
若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!
人为财死鸟为食亡。天下熙熙皆为利来,天下攘攘皆为利往。
不同语言的返回值
- 大部分编程语言使用 return [val] 作为返回值。C系语言和Shell都是如此。
C/ObjC/C++/Java/C#/Python/Shell/仓颉 等。 - Shell有点特殊,如果没指定return, 将最后一条命令退出状态作为返回值。
- VB 没有Return语句(VB.Net才有),函数名作为返回值,函数返回值可以传递给函数名返回。
- 仓颉 不一定需要为函数指定返回值,编译器根据函数实现可以推测返回值。
多个返回值?
- 大部分早期的编程语言不支持多个返回值,因为会让问题变得复杂。比如:
- C/ObjC/C++/PHP 等。
- 但并不意味无法返回多个值,可以利用指针参数传出返回值。
- Python/Go 都支持函数的多个返回值。
例如Python返回两个整数:
def test():
return (2, 3) - C# 7.0支持返回元组实现多个返回值,在此之前,必须用out参数来构造多个返回值。
成功返回
- Shell函数返回和命令返回遵循相同原则,返回0代表成功,非0代表失败。这与编译型语言函数返回不太一样。
简洁返回
有些函数返回值仅仅是对参数的简单操作,一些编程语言提供简洁的返回方式。
- C# 6.0引入了expression-bodied methods, 可将一个表达式当做函数返回值。
public int Add(int a, int b) => a + b;
函数返回之后有其他语句?
- C# 会警告这种代码。
若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!
微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。
我是 程序员小迷 (致力于C、C++、C#、Android、iOS、Java、Kotlin、Objective-C、Swift、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。