O que são especificadores de formato em C?

O Que Sao Especificadores De Formato Em C



Na programação C, especificadores de formato desempenham um papel importante na gestão dos dados. Eles determinam o formato e o tamanho dos dados a serem enviados ou lidos do dispositivo de entrada/saída. Compreender o formato personalizado é um tópico importante na programação C, pois é amplamente usado como saída de funções.

Neste artigo, abordaremos o básico, a sintaxe e os exemplos de uso de especificadores de formato em C Programação .

Especificadores de formato em C

O especificadores de formato são usados ​​para especificar o formato da string de saída, que é impressa no console usando o printf() função e também podem ser usados ​​no scanf() função para obter entrada do usuário. Nós usamos o % símbolo com cada especificador de formato. A linguagem C fornece diferentes especificadores de formato para cada tipo de dados. Alguns dos especificadores de formato você pode usar em seus programas C são mencionados na tabela abaixo:







Tipo de dados Especificador de formato
inteiro Número inteiro chamuscado %d
Número inteiro sem sinal %eu
Número inteiro curto com sinal %oi
Inteiro curto não assinado %hu
dobro dobro %lf
duplo longo %Lf
personagem %c
longo longo %EU
Longo sem assinatura %Lu
Não assinado longo longo %llu
longo longo %lli ou %lld
corda %s
não imprime nada %n
Pontos Flutuantes de Notações Científicas %e ou %E
Imprime ponteiros %p
%o representação octogonal
%x Representação hexadecimal

Por meio dos especificadores de formato mencionados acima no função printf() , você pode recuperar os dados armazenados nele.



Aqui estão alguns exemplos simples usando especificadores de formato para diferentes tipos de dados em C:



1: inteiros

#include

int principal ( ) {

int num = 10 ;

printf ( 'Inteiro assinado: %d \n ' , num ) ;

printf ( 'Inteiro sem sinal: %u \n ' , num ) ;

printf ( 'Inteiro Curto com Sinal: %hi \n ' , ( curto ) num ) ;

printf ( 'Inteiro curto não assinado: %hu \n ' , ( não assinado curto ) num ) ;

retornar 0 ;

}





2: Duplo

#include

int principal ( ) {

dobro num = 10.5 ;

printf ( 'Duplo: %lf \n ' , num ) ;

printf ( 'Duplo longo: %Lf \n ' , ( longo dobro ) num ) ;

retornar 0 ;

}

3: Personagem

#include

int principal ( ) {

Caracteres CH = 'a' ;

printf ( 'Personagem: %c \n ' , CH ) ;

retornar 0 ;

}



4: longo

#include

int principal ( ) {

longo num = 100000 ;

printf ( 'Longo: %ld \n ' , num ) ;

printf ( 'Compro não assinado: %lu \n ' , ( não assinado longo ) num ) ;

printf ( 'Longo Longo: %lld \n ' , ( longo longo ) num ) ;

printf ( 'Não assinado Long Long: %llu \n ' , ( não assinado longo longo ) num ) ;

retornar 0 ;

}

5: Corda

#include

int principal ( ) {

Caracteres str [ ] = 'Olá Mundo!' ;

printf ( 'Cordas \n ' , str ) ;

retornar 0 ;

}

6: Diversos

#include

int principal ( ) {

dobro num = 123,45 ;

printf ( 'Pontos flutuantes de notações científicas: %e \n ' , num ) ;

printf ( 'Imprime ponteiros: %p \n ' , & num ) ;

printf ( 'Representação octogonal: %o \n ' , quinze ) ;

printf ( 'Representação hexadecimal: %x \n ' , quinze ) ;

printf ( 'Imprime o caractere %%: %% \n ' ) ;

retornar 0 ;

}

Formatação com especificadores de formato

Algumas ferramentas em C podem ser usadas para formatar a saída, elas geralmente são inseridas entre o % sinal e o símbolo do especificador de formato. Mencionamos algumas das ferramentas de formatação abaixo:

  • O período (.) sinal separa a largura do campo com precisão.
  • O menos (-) sinal indica o alinhamento à esquerda.
  • O número depois de % sinal especifica a largura mínima do campo a ser impresso.

Exemplo

No código de exemplo abaixo, usamos as ferramentas de formatação com os especificadores de formato:

#include

int principal ( )

{

Caracteres str [ ] = 'Linux' ;

printf ( '%30s \n ' , str ) ;

printf ( '%-30s \n ' , str ) ;

printf ( '%10,5s \n ' , str ) ;

printf ( '%-20,5s \n ' , str ) ;

retornar 0 ;

}

No código acima %30s especifica que a string deve ser impressa em um campo com largura mínima de 30 caracteres. %-30s indica a impressão da string em um campo de no mínimo 30 caracteres, mas deve ser alinhado à esquerda. O mesmo é o caso para $ 10,5s e %-20,5s.

Conclusão

O especificadores de formato são usados ​​na formatação de funções de entrada e saída, incluindo printf() funções. O especificadores de formato determinam o formato da string de saída e são usados ​​com o % personagem. Quando o valor é armazenado na variável, você não pode exibir a saída no console diretamente sem usar os especificadores de formato. Nós discutimos diferentes tipos de especificadores de formato com o código de exemplo na seção acima do guia.