В чём основное отличие этих способов ввода/вывода? Можно ли в C++ использовать спокойно функции scanf/printf или есть какие-то подводные камни?
scanf
и printf
это наследие C, они входят в стандартную библиотеку C, которая полностью поддерживается С++ (хотя сейчас эти языки расходятся). Потоки (cin
и cout
) это стандартная (и более новая) библиотека C++. Можно использовать любую библиотеку, или даже обе сразу. Однако как замечено в комментариях, для доступа к одному и тому же стандартному потоку (stdin/stdout
) лучше использовать что-то одно, иначе могут быть проблемы с синхронизацией.
Хотя функции ввода/вывода C более старые, они помощнее, да и поудобнее. Так что в маленьких (особенно учебных) программах чаще используются потоки, а в больших коммерческих чаще можно видеть функции C. Это по личному впечатлению, конечно, вряд ли тут есть достоверная статистика.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Указатели - это не массивыНельзя просто положить набор элементов "в указатель" - сначала вам нужно выделить память через new
Пытаюсь собрать qtwebkit из исходников и получить доступ к WebCoreТ