Sono curioso:Qual è la precisione predefinita di c printf% f?
Se si fa un printf("%f", number);
qual è la precisione della dichiarazione? Cioè Quante cifre decimali appariranno? Questo compilatore è dipendente?
Sono curioso:Qual è la precisione predefinita di c printf% f?
Se si fa un printf("%f", number);
qual è la precisione della dichiarazione? Cioè Quante cifre decimali appariranno? Questo compilatore è dipendente?
L'ANSI C di serie, nella sezione 7.19.6.1, dice questo sul formato f specificatore:
Se la precisione non è presente, 6 cifre sono date
La precisione di default per %f
è di 6 cifre (vedere la specifica ISO C99, 7.19.6.1/7).
Il libro, C: A Reference Manual indica che se non viene specificata alcuna precisione, la precisione predefinita è 6 (cioè 6 cifre dopo il punto decimale).
Un avvertimento è se il numero è inf (cioè 1.0/0.0) o NaN allora C99 specifica che l'uscita dovrebbe essere inf, -inf, infinità, -infinito o nan ecc ....
Questo effettivamente definito dallo standard C. Ho aggiunto un tag. –