A scuola abbiamo iniziato a studiare C quest'anno, nonostante io sia molto più avanti della lezione, e ho imparato Java, C ++ e C mentre la classe è alla base di C. Comunque, mi sono documentato, leggendo libri, articoli e ho chiesto alla mia insegnante perché dovrei imparare il C, e lei ha detto che era il fondamento del C ++. Quando ho iniziato a programmare ho scoperto che il C ++ era molto più semplice, in seguito ho imparato C. Ma nei libri puoi vedere che il codice C funziona in C ++ ma non va viceversa.
La mia domanda è piuttosto semplice ~ È una buona abitudine usare le espressioni C in C ++? Lasciate che vi faccia un esempio:
Dovrebbe questo codice
#include <stdio.h>
#include <iostream>
int main() {
int x;
scanf("%d", &x);
cout << "The number you entered is " << x << "And it's double is " << x*x;
return 0;
}
Sii più efficiente o migliore in qualsiasi modo di questo:
#include <iostream>
int main() {
int x;
cin >> x;
cout << "The number you entered is " << x << "And it's double is " << x*x;
return 0;
}
Ho già fatto una semplice documentazione su questo in alcuni vecchi libri polverosi, e da quello che ho trovato, usare scanf invece di cout scarica anche il flusso o qualcosa del genere, quindi in pratica sto chiedendo se è meglio usare scanf e in quali contesti.
Questo vale anche per il file IO poiché ho sempre trovato FIle IO più facile in C che in C ++. Questa domanda vale praticamente per ogni espressione generale in C applicata a C ++. È anche degno di nota il fatto che sto usando un compilatore moderno e tuttavia questo non dovrebbe importare poiché sto chiedendo se è una buona abitudine di programmazione usare espressioni C nel codice C ++.
Probabilmente ci sono svantaggi e svantaggi di farlo, ma sto solo cercando un tipo di risposta sì / perché, no / perché.
Inoltre, se ci sono dei dettagli che ho lasciato fuori, pubblica un commento.
stdio
eiostream
. C'è un certo ordine e sincronizzazione garantiti all'interno di una famiglia che non si applicano necessariamente al di fuori di esso.