Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Não entendi muito bem a função `sprintf`

Com qual finalidade seu usa a função sprintf ? O que ela faz ?

3 respostas

A função sprintf serve para formatar uma string e guardar o resultado em um array (na realidade, ela aceita um ponteiro).

Exemplo:

#include <stdio.h>
#include <math.h>

int main()
{
   char str[80];

   sprintf(str, "Valor de Pi = %f", M_PI);
   puts(str);

   return(0);
}

Esse código vai imprimir o valor de pi, mas observe que ele só é impresso por conta da instrução puts. Só o sprintf não imprime nada em tela.

Dá uma olhada na página: https://www.tutorialspoint.com/c_standard_library/c_function_sprintf.htm

de onde eu tirei o exemplo.

Acho q entendi. É como se ela juntasse variáveischar, montasse tudo em uma só string e salvasse numa array ?

solução!

Mais ou menos isso. Ele pega uma string de formatação (cada % indica o lugar onde vai entrar uma variável) e vai substituindo os % pelas variaveis que vc vai passando.

Ele funciona igual a printf, mas salva o resultado em um ponteiro.

Note que você pode definir um ponteiro e alocar memória para ele. o inicio do array é o ponteiro nesse exemplo.

Ah, e se a resposta serviu, clica no botão marcar como solução para as outras pessoas saberem que esse tópico já foi respondido.

abraços e bons estudos, Lucas