C/printf
A función printf()
escribe unha serie de caracteres no ficheiro estándar de saída, stdout
, asociado ao monitor. Os caracteres escríbense segundo o formato especificado. A función, en caso de ir todo ben, devolve un valor enteiro equivalente ao número de caracteres escrito. A sintaxe básica da función sería:
printf(cadea);
Recordemos o mellor exemplo de uso desta función, que xa tivemos o privilexio de coñecer anteriormente:
printf("Ola, mundo!\n");
Como se pode apreciar, o uso da función printf()
pode resultar tan doado coma escribir un texto entre comiñas dobres. É dicir, pódese imprimir calquera cadea colocándoa como argumento da función.
Substitución de datos
editarA función printf()
pode recibir argumentos adicionais ao primeiro argumento (que contén unha cadea de texto). Estes argumentos poden ser calquera clase de variable ou dato, de tipo numérico ou alfanumérico, e mesmo unha operación en si (en cuxo caso amosarase o resultado). Ditos argumentos introdúcense, mediante os códigos de substitución axeitados, na cadea principal, na cal se imprimirán. Vexamos un exemplo:
printf("Se multiplicamos 3 por 5 obteremos %d",3*5);
O segundo argumento da función, 3*5
, dará como resultado 15
, e este resultado imprimirase na cadea do primeiro argumento, substituíndo a %d
. %d
é un "marcador de formato", que indica que o dato que o vai substituír será un número en sistema decimal.
O resultado da función sería: Se multiplicamos 3 por 5 obteremos 15
Tamén podemos introducir máis dun dato na cadea do primeiro argumento. En tal caso, teremos que fornecerlle á función tantos argumentos adicionais coma datos queiramos introducir na cadea do primeiro argumento, e a orde dos marcadores de formato da cadea debe corresponderse coa orde en que aparecen a continuación o resto dos argumentos de printf()
.
printf("Se multiplicamos 3 por 5 obteremos %d, e se o resultado o dividimos entre 3, obteremos %d",3*5,3*5/3);
O resultado da función sería: Se multiplicamos 3 por 5 obteremos 15, e se o resultado o dividimos entre 3, obteremos 5
.
Precisión dos números reais
editarÁ hora de imprimir en pantalla números “en coma flotante” ─tipos float
, double
e long double
─ probablemente prefiramos establecer nós o número de cifras que aparecerán tras a coma, pois un número coma 34.9900000000000
pode quedar bastante feo. Establecer o número de cifras tras a coma (que en realidade é un punto, dado que se está no sistema numérico anglosaxón) é moi doado. Nada como ver uns exemplos para entender como facelo:
printf("%.0f, %.2f, %.3f.",numero1, numero2, numero3);
No exemplo anterior, numero1
aparecerá sen decimais, numero2
aparecerá con 2 decimais e numero3
aparecerá con tres decimais.
As tres variables son de tipo float
, que no printf()
se representa co código %f
. Entre o %
e o f
escríbese un punto (.
) seguido dun número que representa a cantidade de decimais que se amosarán.