Читаем Rust на примерах полностью

Нажми кнопку "Run", чтобы увидеть ожидаемый результат. Затем добавь новую строку с другим макросом println!, чтобы вывод был таким:

Привет, мир!

Я программирую на языке Rust!

<p id="Комментарии"><strong><a l:href="#Комментарии">Комментарии</a></strong></p>

Каждая программа, безусловно, нуждается в комментариях и Rust предоставляет несколько способов комментирования кода:

   • Обычные комментарии, которые игнорируются компилятором:

      • // Однострочный комментарий. Который завершается в конце строки.

      • /* Блочный комментарий, который продолжается до завершающего символа. */

   • Doc комментарии, которые будут сгенерированы в HTML документацию:

      • /// Генерация документации для функции.

      • //! Генерация документации для модуля.

fn main() {

// This is an example of a line comment

// There are two slashes at the beginning of the line

// And nothing written inside these will be read by the compiler

// println!("Hello, world!");

// Run it. See? Now try deleting the two slashes, and run it again.

/*

* This is another type of comment, a block comment. In general,

* line comments are the recommended comment style. But

* block comments are extremely useful for temporarily disabling

* chunks of code. /* Block comments can be /* nested, */ */

* so it takes only a few keystrokes to comment out everything

* in this main() function. /*/*/* Try it yourself! */*/*/

*/

/*

Note: The previous column of `*` was entirely for style. There's

no actual need for it.

*/

// You can manipulate expressions more easily with block comments

// than with line comments. Try deleting the comment delimiters

// to change the result:

let x = 5 + /* 90 + */ 5;

println!("Is `x` 10 or 100? x = {}", x);

}

הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

<p id="Смотрите_также"><strong><a l:href="#Смотрите_также">Смотрите также:</a></strong></p>

Документирование библиотек

<p id="Форматированный_вывод"><strong><a l:href="#Форматированный_вывод">Форматированный вывод</a></strong></p>

Вывод обрабатывается несколькими макросами, которые определены в std::fmt. Вот некоторые из них:

   • format!: записывает форматированный текст в String.

   • print!: работает аналогично с format!, но текст выводится в консоль (io::stdout).

   • println!: аналогично print!, но в конце добавляется переход на новую строку.

   • eprint!: аналогично format!, но текст выводится в стандартный поток ошибок (io::stderr).

   • eprintln!: аналогично eprint!, но в конце добавляется переход на новую строку.

Весь текст обрабатывается аналогичным образом. Плюс данного метода в том, что корректность форматирования будет проверена на этапе компиляции программы.

fn main() {

// `{}` автоматически будет заменено на

// аргументы. Они будут преобразованы в строку.

println!("{} дней", 31);

// Без суффиксов, 31 является i32. Можно изменить тип 31,

// используя суффикс.

// Существует множество способов работы с форматированным выводом. Можно указать

// позицию для каждого аргумента.

Похожие книги