|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.03.2012, 17:36 | #1 |
Пользователь
Регистрация: 16.03.2012
Сообщений: 27
|
Разница между cout/cin && printf/scanf
Подскажите пожайлуста, по сути дела это 2 одинаковые вещи...которые обозначают ввод и вывод на консольку, только вызываются разными библиотеками: stdio и iostream . Так вот, в чём же разница между ними? Я заметил только, что printf/scanf сложнее оформлять...
Кто владеет информацией, тот владеет миром!
|
20.03.2012, 17:40 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
std::cout && std::cin - это объекты из libcpp.
а printf && scanf - это функции из libc. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
20.03.2012, 17:46 | #3 |
Пользователь
Регистрация: 16.03.2012
Сообщений: 27
|
Очень признателен за ответ, но я недавно начал изучать плюсы...поэтому про функции и объекты libcpp и libc не знаю...можно по-проще? Это совсем разные вещи? Может с памятью что-то значит?
Кто владеет информацией, тот владеет миром!
|
20.03.2012, 17:50 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
libc - это библиотека языка С.
libcpp - это библиотека языка С++. С++ ограниченно совместим с С. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
20.03.2012, 17:52 | #5 |
Пользователь
Регистрация: 16.03.2012
Сообщений: 27
|
Тоесть разницы между ними нету? Можно использовать что больше нравится?
Кто владеет информацией, тот владеет миром!
|
20.03.2012, 17:58 | #6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ну вообще да можно.
хотя я предпочитаю в С++ пользоваться средствами последнего. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
20.03.2012, 18:02 | #7 |
Пользователь
Регистрация: 16.03.2012
Сообщений: 27
|
Спасибо, помог!
Кто владеет информацией, тот владеет миром!
|
20.03.2012, 18:49 | #8 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Ну как сказать... Вообще это принципиально разные вещи...
cout и cin - это потоки. Конкретно cin является экземпляром класса cin, который есть специализация шаблона basic_istream: Код:
Аналогично и cout - экземпляр класса ostream, являющегося специализацией шаблона basic_ostream. А printf и scanf - это просто функции, самые что ни на есть обычные. В силу такого различия у cin и cout есть куча более высокоуровневых возможностей по сравнению с printf и scanf, так же, как и у других потоков. Для справки, Код:
Среди возможностей и преимуществ потоков - перегрузка операторов ввода/вывода, использование манипуляторов, единый интерфейс с другими потоками (файловыми, строковыми и прочими). Если вы пишите на C++ - используйте стандартную библиотеку, т.е. потоки.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Какова разница между "int** &a" и "int** a" в кач-ве параметра функции? | dollemika | Помощь студентам | 3 | 15.01.2012 17:16 |
Разница между & и bg в *nix | Neymexa | Операционные системы общие вопросы | 2 | 24.09.2011 10:23 |
лабораторная работа printf/scanf | elenai | Общие вопросы C/C++ | 2 | 27.12.2010 10:47 |
лабораторная работа С++(printf/scanf) | elenai | Помощь студентам | 0 | 26.12.2010 21:50 |
TForm & TImage & PNG & Прозрачность | delphi_beginner | Общие вопросы Delphi | 7 | 19.09.2009 08:46 |