РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
39 of 1245 menu

Макрос concat!

Макрос concat! принимает произвольное количество аргументов и объединяет их в один строковый литерал во время компиляции. Аргументами могут быть строковые литералы, символьные литералы, числа и другие литералы, которые приводятся к строке. Результатом макроса является статическая строка &'static str, поэтому он часто используется для формирования константных сообщений, путей, ключей и других строк, известных на этапе сборки.

Синтаксис

concat!(arg1, arg2, arg3, ...)

Пример

Давайте объединим несколько строковых литералов в одну строку:

fn main() { let res = concat!("ab", "cd", "e"); println!("{}", res); }

Результат выполнения кода:

"abcde"

Пример

Давайте объединим строковые литералы с числами и символами:

fn main() { let res = concat!("id_", 123, "_", 'x'); println!("{}", res); }

Результат выполнения кода:

"id_123_x"

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

  • макрос stringify!,
    который превращает выражение в строковый литерал
  • макрос env!,
    который получает значение переменной окружения во время компиляции
  • макрос include_str!,
    который включает содержимое файла как строку
  • ключевое слово const,
    которое объявляет константы, часто формируемые через concat!
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить