Spec-Zone.ru › Octave 8

14.2.7 Таблица преобразований вывода

Ниже приведена таблица, обобщающая действия всех различных преобразований:

‘%d’, ‘%i’

Выводит целое число в виде знакового десятичного числа. Подробности см. в разделе Преобразования целых чисел. ‘%d’ и ‘%i’ являются синонимами для вывода, но отличаются при использовании с scanf для ввода (см. Таблица преобразований ввода).

‘%o’

Выводит целое число в виде беззнакового восьмеричного числа. Подробности см. в разделе Преобразования целых чисел.

‘%u’

Выводит целое число в виде беззнакового десятичного числа. Подробности см. в разделе Преобразования целых чисел.

‘%x’, ‘%X’

Выводит целое число в виде беззнакового шестнадцатеричного числа. ‘%x’ использует строчные буквы, а ‘%X’ — прописные. Подробности см. в разделе Преобразования целых чисел.

‘%f’

Выводит число с плавающей точкой в обычной (фиксированной) записи. Подробности см. в разделе Преобразования чисел с плавающей точкой.

‘%e’, ‘%E’

Выводит число с плавающей точкой в экспоненциальной записи. ‘%e’ использует строчные буквы, а ‘%E’ — прописные. Подробности см. в разделе Преобразования чисел с плавающей точкой.

‘%g’, ‘%G’

Выводит число с плавающей точкой либо в обычной (фиксированной), либо в экспоненциальной записи, в зависимости от того, какая из них более подходит для его величины. ‘%g’ использует строчные буквы, а ‘%G’ — прописные. Подробности см. в разделе Преобразования чисел с плавающей точкой.

‘%c’

Выводит один символ. См. Другие преобразования вывода.

‘%s’

Выводит строку. См. Другие преобразования вывода.

‘%%’

Выводит литеральный символ ‘%’. См. Другие преобразования вывода.

Если синтаксис спецификации преобразования некорректен, могут произойти непредсказуемые действия, поэтому этого следует избегать. В частности, MATLAB допускает использование простого знака процента ‘%’ без последующего символа преобразования. Octave выдаст ошибку и прекратит работу, если увидит такой код. Если строковая переменная, которую нужно обработать, не может быть гарантированно свободной от потенциальных кодов формата, лучше использовать двухаргументную форму любой из функций printf, и установить строку формата в %s. В качестве альтернативы, для кода, который не обязан быть совместимым со MATLAB, можно использовать функцию Octave puts или disp.

printf (strvar);        # Unsafe if strvar contains format codes
printf ("%s", strvar);  # Safe
puts (strvar);          # Safe

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

© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v7.2.0/Table-of-Output-Conversions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API