Библиотека knigago >> Компьютеры: Языки и системы программирования >> Другие языки и системы программирования >> Rust на примерах

Коллектив авторов - Rust на примерах

Rust на примерах
Книга - Rust на примерах.   Коллектив авторов  - прочитать полностью в библиотеке КнигаГо
Название:
Rust на примерах
Коллектив авторов

Жанр:

Другие языки и системы программирования, Учебники и самоучители по компьютеру, Любительские переводы, Программирование: прочее

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Rust на примерах"

https://doc.rust-lang.ru/stable/rust-by-example/
Rust - современный язык программирования, нацеленный на безопасность, скорость и параллелизм. Данные цели выполняются при условии безопасной работы с памятью без использования сборщика мусора.

Rust на примерах - это набор исполняемых примеров, которые иллюстрируют различные концепции языка Rust, а так же возможности его стандартной библиотеки. Для того, чтобы подчеркнуть ещё больше из этих примеров, не забудьте установить Rust на своём компьютере и проверить официальную документацию. Если вы ранее не сталкивались с языком программирования Rust, то советую вам для начала ознакомиться с русскоязычной книгой по Rust. Кроме этого можно посмотреть исходный код этого сайта или оригинала.

Читаем онлайн "Rust на примерах". [Страница - 2]

завершающего символа. */

   • 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

Смотрите также:

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

Форматированный вывод

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

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

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

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

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

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

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

fn main() {

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

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

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

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

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

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

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

println!("{0}, это {1}. {1}, это {0}", "Алиса", "Боб");

// Так же можно именовать аргументы.

println!("{subject} {verb} {object}",

object="ленивую собаку",

subject="быстрая коричневая лиса",

verb="прыгает через");

println!("{} из {:b} людей знают, что такое двоичный код, а остальные нет.", 1, 2);

// Можно выравнивать текст, сдвигая его на указанную ширину.

// Данный макрос отобразит в консоли

// " 1". 5 пробелов и "1".

println!("{number:>width$}", number=1, width=6);

// Можно добавить к цифрам пару нулей. Данный макрос выведет "000001".

println!("{number:>0width$}", number=1, width=6);

// Компилятор обязательно проверит, что в макрос передано правильное количество

// аргументов.

println!("Меня зовут {0}, {1} {0}", "Бонд");

// ИСПРАВЬТЕ ^ Добавьте недостающий аргумент: "Джеймс"

// Создаём структуру, которая хранит в себе `i32`. Назовём её `Structure`.

#[allow(dead_code)]

struct Structure(i32);

// Однако, пользовательские типы данных, например, как эта структура

// требуют более сложной обработки для вывода. Данный код не будет работать.

println!("Эта структура `{}` не хочет выводится на экран...", Structure(3));

// ИСПРАВЬТЕ ^ Закомментируйте эту строку.

}

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

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

std::fmt содержит в себе много типажей, которые управляют отображением текста. Базовая форма двух самых важных рассмотрена ниже:

   • fmt::Debug: Использует маркер {:?}. Форматирует текст для отладочных целей.

   • fmt::Display: Использует маркер {}. Форматирует текст в более элегантном,удобном для пользователя стиле.

В данном примере используется fmt::Display, потому что стандартная библиотека предоставляет реализацию для данного типа. Для отображения собственных типов потребуется больше дополнительных шагов.

Реализация

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.