En aquest article, tractarem els conceptes bàsics, la sintaxi i els exemples d'ús especificadors de format en C Programació .
Especificadors de format en C
El especificadors de format s'utilitzen per especificar el format de la cadena de sortida, que després s'imprimeix a la consola mitjançant l' printf() funció i també es poden utilitzar en el scanf() funció per rebre l'entrada de l'usuari. Fem servir el símbol % amb cada especificador de format. El llenguatge C ofereix diferents especificadors de format per a cada tipus de dades. Alguns dels especificadors de format que podeu utilitzar als vostres programes C s'esmenten a la taula següent:
Tipus de dades | Especificador de format | |
Enter | Enter cantat | %d |
Enter sense signe | %i | |
Enter curt signat | %hola | |
Enter curt sense signe | %hu | |
doble | doble | %lf |
doble llarg | %Lf | |
personatge | %c | |
llarg | llarg | %I |
llarg sense signar | %lu | |
Molt llarg sense signar | %llu | |
llarg llarg | %lli o %lld | |
corda | %s | |
No imprimeix res | %n | |
Punts flotants de les notacions científiques | %e o %E | |
Imprimeix punters | %p | |
%O | Representació octogonal | |
%x | Representació hexadecimal |
Mitjançant els especificadors de format esmentats anteriorment al funció printf(). , podeu recuperar les dades emmagatzemades en ell.
Aquí teniu alguns exemples senzills d'ús especificadors de format per a diferents tipus de dades en C:
1: nombres enters
#inclouint principal ( ) {
int en una = 10 ;
imprimirf ( 'Enter signat: %d \n ' , en una ) ;
imprimirf ( 'Enter sense signe: %u \n ' , en una ) ;
imprimirf ( 'Enter curt signat: %hi \n ' , ( curt ) en una ) ;
imprimirf ( 'Enter curt sense signar: %hu \n ' , ( sense signar curt ) en una ) ;
tornar 0 ;
}
2: Doble
#inclouint principal ( ) {
doble en una = 10.5 ;
imprimirf ( 'Doble: %lf \n ' , en una ) ;
imprimirf ( 'Doble llarg: %Lf \n ' , ( llarg doble ) en una ) ;
tornar 0 ;
}
3: Personatge
#inclouint principal ( ) {
char cap = 'a' ;
imprimirf ( 'Caràcter: %c \n ' , cap ) ;
tornar 0 ;
}
4: llarg
#inclouint principal ( ) {
llarg en una = 100000 ;
imprimirf ( 'Llarg: %ld \n ' , en una ) ;
imprimirf ( 'Llarg sense signar: %lu \n ' , ( sense signar llarg ) en una ) ;
imprimirf ( 'Llarg llarg: %lld \n ' , ( llarg llarg ) en una ) ;
imprimirf ( 'Llarg llarg sense signar: %llu \n ' , ( sense signar llarg llarg ) en una ) ;
tornar 0 ;
}
5: Corda
#inclouint principal ( ) {
char str [ ] = 'Hola món!' ;
imprimirf ( 'Cordes \n ' , str ) ;
tornar 0 ;
}
6: Diversos
#inclouint principal ( ) {
doble en una = 123.45 ;
imprimirf ( 'Coma flotant de notacions científiques: %e \n ' , en una ) ;
imprimirf ( 'Imprimeix punters: %p \n ' , & en una ) ;
imprimirf ( 'Representació octogonal: %o \n ' , 15 ) ;
imprimirf ( 'Representació decimal hexa: %x \n ' , 15 ) ;
imprimirf ( 'Imprimeix %% caràcter: %% \n ' ) ;
tornar 0 ;
}
Format amb especificadors de format
Algunes eines en C es poden utilitzar per formatar la sortida, generalment s'insereixen entre els % signe i el símbol de l'especificador de format. Hem esmentat algunes de les eines de format a continuació:
- El període (.) El signe separa l'amplada del camp amb precisió.
- El menys (-) El signe indica l'alineació esquerra.
- El nombre després de la % signe especifica l'amplada mínima del camp que s'ha d'imprimir.
Exemple
Al codi d'exemple següent, hem utilitzat les eines de format amb els especificadors de format:
#inclouint principal ( )
{
char str [ ] = 'Linux' ;
imprimirf ( '% 30s \n ' , str ) ;
imprimirf ( '% -30s \n ' , str ) ;
imprimirf ( '% 10,5 s \n ' , str ) ;
imprimirf ( '% -20,5 s \n ' , str ) ;
tornar 0 ;
}
En el codi anterior %30s especifica que la cadena s'ha d'imprimir en un camp amb una amplada mínima de 30 caràcters. % -30s indica imprimir la cadena en un camp d'un mínim de 30 caràcters però s'ha de deixar alineat. El mateix passa per 10,5 $ i % -20,5 s.
Linia inferior
El especificadors de format s'utilitzen en funcions de format d'entrada i sortida, incloses printf() funcions. El especificadors de format determineu el format de la cadena de sortida i s'utilitzen amb el % personatge. Quan el valor s'emmagatzema a la variable, no podeu mostrar la sortida directament a la consola sense utilitzar els especificadors de format. Hem parlat de diferents tipus especificadors de format amb el codi d'exemple a la secció anterior de la guia.