W szkole zaczęliśmy uczyć się języka C w tym roku, pomimo tego, że jestem znacznie przed klasą, a ja nauczyłem się Java, C ++ i C, podczas gdy klasa jest u podstawy C. W każdym razie, dokumentowałem siebie, czytając książki, artykuły, a ja zapytałam moją nauczycielkę, dlaczego mam się uczyć języka C, a ona powiedziała, że to podstawa języka C ++. Kiedy zaczynałem programować, łatwiej było mi C ++, później nauczyłem się C. Ale w książkach widać, że kod C działa w C ++, ale nie działa odwrotnie.
Moje pytanie jest dość proste ~ Czy dobrym nawykiem jest używanie wyrażeń C w C ++? Dam ci przykład:
Powinien ten kod
#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;
}
Bądź bardziej wydajny lub lepszy w jakikolwiek sposób:
#include <iostream>
int main() {
int x;
cin >> x;
cout << "The number you entered is " << x << "And it's double is " << x*x;
return 0;
}
Zrobiłem już łatwą dokumentację na ten temat w niektórych zakurzonych starych książkach i z tego, co mogłem znaleźć, użycie scanf zamiast cout również opróżnia strumień lub coś takiego, więc w zasadzie pytam, czy lepiej użyć scanf i jakie konteksty
Dotyczy to również pliku IO, ponieważ zawsze uważałem, że FI IO jest łatwiejszy w C niż w C ++. To pytanie dotyczy prawie każdego ogólnego wyrażenia w C zastosowanego do C ++. Warto również zauważyć, że korzystam z nowoczesnego kompilatora, ale nie powinno to mieć znaczenia, ponieważ pytam, czy dobrym nawykiem programowania jest używanie wyrażeń C w kodzie C ++.
Prawdopodobnie są to wady i zalety, ale szukam tylko odpowiedzi typu tak / dlaczego, nie / dlaczego.
Również jeśli są jakieś szczegóły, które pominąłem, dodaj komentarz.
stdioiiostream. W rodzinie gwarantowana jest pewna kolejność i synchronizacja, które niekoniecznie mają zastosowanie poza nią.