sprintf

Formata dados em texto com uma especificação de formato.

Categoria: Language Fundamentals > Data Types

Sintaxe

str = sprintf(formatSpec, A1, ..., An)

Formata os argumentos conforme formatSpec e retorna um vetor de caracteres.

Descrição

O formato é reutilizado quantas vezes for preciso para consumir todos os argumentos, então sprintf('%d,', [1 2 3]) dá '1,2,3,'. Sequências de escape como \n e \t no formato são traduzidas. Argumentos matriciais são lidos coluna a coluna.

Uma conversão %d recebendo um valor não inteiro passa para notação exponencial (sprintf('%d', 2.5) dá '2.500000e+00'). Use %s com uma string escalar, e fprintf para imprimir o mesmo texto diretamente.

Argumentos de entrada

formatSpec
Texto com caracteres comuns e conversões como %d (inteiro), %f (fixo), %e (exponencial), %g (a mais curta das duas), %s (texto), %c (caractere), %x (hexadecimal). Flags, largura e precisão ficam entre % e a letra, como em %8.3f ou %-6d.
A1, ..., An
Valores a inserir, consumidos em ordem de coluna.

Argumentos de saída

str
Vetor de caracteres com o texto formatado.

Exemplo

sprintf('%d items, %5.2f', 3, 2.5)
sprintf('%d,', [1 2 3])
sprintf('%6.2f|%-6d|%e', pi, 5, 12345.678)
sprintf('%x', 255)
Saída
ans = '3 items,  2.50'
ans = '1,2,3,'
ans = '  3.14|5     |1.234568e+04'
ans = 'ff'

Veja também

fprintf num2str disp string sscanf compose