【百例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 没有可变参数的函数写法。
相关推荐
学逆向的5 小时前
C 堆区内存管理
c语言·开发语言·网络安全
huoyueyi5 小时前
《融天AI-APP从0到1开发实录》
开发语言·lua
琥珀.5 小时前
mysql中json数组转列表查询
linux·运维·服务器
OpenAnolis小助手6 小时前
PHP 两个严重漏洞曝光,龙蜥社区 24 小时完成 3 版本修复
开发语言·操作系统·php·龙蜥社区
阿尼卡~7 小时前
VS Code 配置 C 语言开发环境(Windows 10/11):从 GCC 安装到运行、断点调试,一篇搞定
c语言·开发语言·windows
云边云科技_云网融合8 小时前
连锁门店组网怎么做?SD-WAN 多分支组网的架构选型、部署与成本结构
服务器·数据库·php
网络小江8 小时前
组网第35课:静态路由——下一跳、出接口、默认路由、浮动静态与黑洞路由
服务器·网络·默认路由·黑洞路由·浮动静态路由
hhhjhl8 小时前
Undici 跨端三方库仓颉适配全流程
java·开发语言·ubuntu
染指11108 小时前
158.Agent-LangGraph-子图(共享状态和不共享状态模式)
开发语言·人工智能·python·ui·agent·agents
wangchunyu1149 小时前
JAVA JVM内存结构与运行时数据区
java·开发语言·jvm