Ho un programma C++ che prende in valori e stampa i valori in questo modo:C - La stampa di float valori
getline(in,number);
cout << setw(10) << number << endl;
Ho un programma di C equivalente che prende in valori e stampa in questo modo:
fscanf(rhs, "%e", &number);
printf("%lf\n", number);
Ma mentre il programma C++ stampa, 0.30951
il programma C stampa 0.309510
. Altri esempi: C++: 0.0956439
C: 0.095644
. Sembra stampare gli stessi risultati fino a quando il valore è lungo 7 cifre, ma se è più corto delle 7 cifre, aggiunge uno 0 in più alla fine. E se è più lungo di 7 cifre, arrotonda fino a 6 cifre. Vorrei che i risultati C corrispondessero al programma C++. Qualsiasi aiuto sarebbe apprezzato.
Grazie.
Nota: il numero è un float e il numero viene letto da un file.
Si desidera modificare i risultati C in modo che corrispondano al C++ o viceversa? –
Corretto, voglio che il risultato C corrisponda al C++. – FidelCashflo