В школе мы начали изучать C в этом году, несмотря на то, что я намного опередил класс, и я изучал Java, C ++ и C, пока класс находится в основе C. Во всяком случае, я документировал себя, читал книги, статьи, и я спросил своего учителя, почему я должен изучать C, и она сказала, что это основа C ++. Когда я впервые начал программировать, я обнаружил, что C ++ намного легче, потом я изучил C. Но в книгах вы можете видеть, что код C работает на C ++, но не наоборот.
Мой вопрос довольно простой ~ Это хорошая привычка использовать выражения C в C ++? Позволь мне привести пример:
Если этот код
#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;
}
Будьте эффективнее или лучше, чем это:
#include <iostream>
int main() {
int x;
cin >> x;
cout << "The number you entered is " << x << "And it's double is " << x*x;
return 0;
}
Я уже сделал несколько простых документов по этому вопросу в старых пыльных книгах, и из того, что я смог найти, использование scanf вместо cout также сбрасывает поток или что-то в этом роде, поэтому я в основном спрашиваю, лучше ли использовать scanf и какие контексты.
Это также относится к файловому вводу-выводу, поскольку я всегда обнаруживал, что ввод-вывод файлов проще в C, чем в C ++. Этот вопрос касается почти всех общих выражений в C, применяемых к C ++. Также примечательно, что я использую современный компилятор, и, тем не менее, это не должно иметь значения, поскольку я спрашиваю, является ли хорошей привычкой программирования использовать выражения C в коде C ++.
Есть, вероятно, минусы и плюсы в этом, но я только ищу ответ типа да / почему, нет / почему.
Также, если есть какие-либо подробности, я оставил комментарий.
stdioиiostream. В семье гарантирован определенный порядок и синхронизация, которые не обязательно применяются вне ее.