Rust 习题系列:打印姓名

打印姓名

题目

编写一个程序,调用一次 println! 宏,将你的姓和名打印在一行。再调用一次 println! 宏,将你的姓和名分别打印在两行。最后再调用一次 println! 宏,将你的姓和名打印在一行。输出如下所示所示(记得换成自己的姓名):

李白
李白

分析和解答

这是一道最基础 Rust 编程题之一,只需要使用 println! 这个宏,注意这里带一个英文感叹号 !,表明这是一个而不是一个函数,关于宏和函数将在后面进一步学习。这个宏的功能是将内容输出并换行,println 就是 printline 两个单词的缩写。以下是这道题的示例答案为:

fn main() {
    println!("李白");
    println!("");
    println!("");
    println!("李白");
}

这个程序很简单,就是依次调用 println! 宏打印相应内容即可。可以点击上面代码框中的右上角的三角符来运行程序,看下输出的结果。

首先我们来整体看下这个程序,这包含一个主函数 mainmain 的前面是关键字 fn,表明这里定义一个 main 函数,接下来是左大括号,这个函数在最后的右大括号结束,基本的 main 结构如下:

fn main {

}

main 函数是入口函数,一般的 Rust 程序都从 main 开始并执行程序,我们不能在一个程序内重复定义 main 函数。

main 函数里面使用了 4 次 println! 宏,每一行就是 Rust 的一条语句。Rust 的语句一般以英文分号 ; 结束,注意不要使用中文的分号。

println! 宏会在打印一行的同时打印出一个换行符 \n,若是使用另一个打印的宏 print! 实现上面的打印姓名功能,则需要额外加上换行符,因为 print! 本身不包括换行符。比如第一条语句使用 print! 的话,代码如下:

print!("李白\n");

一般来说,我们在程序中打印内容在结束时都希望能够换行,所以通常情况下 println! 用得更广泛些。