【百例RUST - 004】函数使用

一、四类函数

第01节 无参数无返回值

rust 复制代码
fn main(){
    println!("函数的定义和使用");
    // 函数的调用
    method_name();
}


// 函数的定义  函数名称推荐是小写字母, 单词之间下划线隔开
fn method_name(){
    println!("我是无参数, 无返回值的函数");
}

第02节 有参数无返回值

rust 复制代码
fn main(){

    println!("函数的定义和使用");
    // 函数的调用
    let argument1 = 10;
    let argument2 = 6.6;
    let argument3 = "30";
    let argument4 = true;
    method_name(argument1, argument2, argument3.to_string(), argument4);

}


// 函数的定义  函数名称推荐是小写字母, 单词之间下划线隔开
fn method_name(param1 : i32, param2 : f32, param3 : String, param4: bool){
    println!("我是有参数, 无返回值的函数, 参数分别是 {} {} {} {}" , param1 , param2 , param3.to_string(), param4);
}

第03节 无参有返回值

rust 复制代码
fn main(){
    println!("函数的定义和使用");
    // 函数的调用
    let result = method_name();
    println!("返回结果是 {}" , result);
}


// 函数的定义  函数名称推荐是小写字母, 单词之间下划线隔开
fn method_name() -> i32 {
    println!("我是无参数, 有返回值的函数");
    return 66;
}

说明一下: 这里也可以直接返回 66 同时去掉 return分号

第04节 有参数有返回值

rust 复制代码
fn main(){

    println!("函数的定义和使用");
    // 函数的调用
    let argument1 = 4;
    let argument2 = 3;
    let result = method_name(argument1, argument2);
    println!("返回结果是 {}" , result);
}


// 函数的定义  函数名称推荐是小写字母, 单词之间下划线隔开
fn method_name(param1:i32, param2:i32) -> i32 {
    println!("我是有参数, 有返回值的函数");
    param1 + param2
}

二、相关问题

第01节 返回值问题

复制代码
1、对于返回值来说:
	A. 可以定义为 return 返回值;  
	B. 也可以省略 return 和 分号
	如果省略了 return 和 分号, 那么最后一个表达式将会作为 返回值。
	
2、省略的规则:
	如果要省略需要同时省略 return 和 分号

第02节 重载问题

复制代码
rust 没有函数的重载写法, 可以定义不同的函数名称, 实现不同的功能

第03节 可变参数

复制代码
rust 没有可变参数的函数写法。
相关推荐
为何创造硅基生物1 天前
C语言 结构体内存对齐规则(通俗易懂版)
c语言·开发语言
吃好睡好便好1 天前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
星寂樱易李1 天前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
仰泳之鹅1 天前
【C语言】自定义数据类型2——联合体与枚举
c语言·开发语言·算法
wangqiaowq1 天前
windows下nginx的安装
linux·服务器·前端
之歆1 天前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
cen__y1 天前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
AI人工智能+电脑小能手1 天前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
社交怪人1 天前
【算平均分】信息学奥赛一本通C语言解法(题号2071)
c语言·开发语言
郭涤生1 天前
不同主机之间网络通信-以太网连接复习
开发语言·rk3588