Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
1

Парадокс выбора

14.09.2015, 21:44. Показов 1223. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеет ли смысл напрочь забыть о всех функциях прямиком из Си?
Существует ли полная замена в Си++ всему, что есть в стандартной библиотеке Си?

Добавлено через 1 минуту
Чисто визуально противно видеть горы однотипных функций, макросов, некрасивых имен типа _Bool или _Complex.
А в Си++ мне нравится, что все имена красивенько гладко написаны, что даже приятно становится использовать.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.09.2015, 21:44
Ответы с готовыми решениями:

Парадокс
Назрел вопрос. Релизовывал сортировку слиянием, далее при тестировании, точнее при замерах времени...

C++, динамический массив, парадокс
Итак, столкнулся с таким моментом: Друг пишет в CodeBlocks С++: #include <stdio.h> int...

Парадокс: значение переменной равно её адресу
Друзья! Вот код, в нём всё понятно. Выводятся одинаковые значения. Но ведь этого не может быть!...

Парадокс в компилере C++
Недавно программирую на C++. Пишу на Visual Studio. Язык по началу кажется лёгким, и я решил...

10
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
14.09.2015, 21:50 2
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
забыть о всех функциях прямиком из Си?
А зачем вы их вообще учили? У меня, например, на них аллергия.
0
2782 / 1935 / 570
Регистрация: 05.06.2014
Сообщений: 5,600
14.09.2015, 21:53 3
Нет. Как минимум с аналогом ctime швах. Плюсовые потоки могут быть тормознутее сишных аналогов (синхронизация, работа потрохов через виртуальные функции, зато универсально). Тоже самое с плюсовыми строками - std::string всегда будет пихать свои данные в динамическую память, а сишная строка и целиком в стеке полежать может (но и размер там менять не сможет).
0
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
14.09.2015, 21:56  [ТС] 4
Mr.X,
Они сами учились по мере чтения книг, особенно Кернигана и Ритчи.
В конце у них идет описание функций ввода - вывода, после знакомства ранее с потоками, меня очень озадачили функции:
fgetc
fgets
fputc
fputs
getc
getchar
putc
putchar
puts
ungetc

Их так много, что все их отличия между собой очень трудно уяснить себе.
0
Эксперт С++
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
14.09.2015, 21:59 5
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
Их так много, что все их отличия между собой очень трудно уяснить себе.
Да, Страуструпу половчее удалось ввод-вывод сконструировать.
0
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
14.09.2015, 22:01  [ТС] 6
Renji, Mr.X, т.е. можно сказать, что средства из библиотек именно Си++ являются удобными, универсальными(как раз то, что нужно для разработчиков промышленных программ), но менее быстрыми. А средства библиотеки Си нужно использовать в задачах оптимизации и системном программировании?
0
2782 / 1935 / 570
Регистрация: 05.06.2014
Сообщений: 5,600
14.09.2015, 22:05 7
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
В конце у них идет описание функций ввода - вывода, после знакомства ранее с потоками, меня очень озадачили функции:
Этот зоопарк и в C++ жив-здоров. Просто превратился в методы std::istream (fgetc = stream.get()).

Добавлено через 2 минуты
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
Renji, Mr.X, т.е. можно сказать, что средства из библиотек именно Си++ являются удобными, универсальными(как раз то, что нужно для разработчиков промышленных программ), но менее быстрыми. А средства библиотеки Си нужно использовать в задачах оптимизации и системном программировании?
Ну, в общем да. Тормозит - откатываемся на Си/WinAPI/ассемблер. Правда, сначала нужно проверить где программа тормозит. А то перейдете на Си, ускорите чтение из файла аж на 50%... И окажется что это экономия 0.01 секунды времени работы программы. А тормозила на самом деле графическая система.
0
Эксперт С++
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
14.09.2015, 22:06 8
Цитата Сообщение от Renji Посмотреть сообщение
Плюсовые потоки могут быть тормознутее сишных аналогов (синхронизация, работа потрохов через виртуальные функции, зато универсально)
это - миф.

C++
1
2
3
// --- отключение синхронизации 
// с сишными потоками ввода-выводы
std::ios::sync_with_stdio(false);
http://habrahabr.ru/post/246257/
1
Croessmah
14.09.2015, 22:15
  #9

Не по теме:

Цитата Сообщение от Renji Посмотреть сообщение
Тормозит - откатываемся на Си/WinAPI/ассемблер.
а если тормозит, то на RTOS пробуем или аппаратно реализуем алгоритм?

0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
14.09.2015, 23:13 10
Цитата Сообщение от hoggy Посмотреть сообщение
это - миф.
Отнюдь. Не знаю, как в Linux, но когда-то сравнивал в Windows (10-я студия) чтение из файла и запись считанного в файл. Си-шные функции быстрее работали. Сейчас попробовал С++ потоки с std::ios::sync_with_stdio(false). Никакой разницы, что true, что false.

Добавлено через 12 минут
Цитата по ссылке:
Внимание! Результаты справедливы только на конкретной системе и могут сильно отличаться на других системах! В частности, я быстренько попробовал clang + libc++ и получил гораздо худшую производительность потоков (тогда как при использовании libstdc++ и clang и gcc дали почти идентичные результаты). Обязательно тестируйте производительность при применении советов!
0
Evg
Эксперт CАвтор FAQ
21279 / 8301 / 637
Регистрация: 30.03.2009
Сообщений: 22,659
Записей в блоге: 30
15.09.2015, 17:34 11
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
Имеет ли смысл напрочь забыть о всех функциях прямиком из Си?
Существует ли полная замена в Си++ всему, что есть в стандартной библиотеке Си?
См. ссылку в конце данного поста: Надо ли перед изучением С++ выучить С?

Добавлено через 45 секунд
Да и весь пост неплохо бы прочитать - там только золотые слова и написаны
0
15.09.2015, 17:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.09.2015, 17:34
Помогаю со студенческими работами здесь

Работа с базой данных парадокс
Всем привет. Ребята вы не могли бы привести пример работы с базой данных paradox (.db), или хотя...

Парадокс при динамическом создании элементов
Доброго времени суток уважаемые форумчане. Столкнулся с нерешаемой проблемой, а именно парадокс. ...

Парадокс
ситуация в следующем есть цмс но это не важно, на лакалке к базе данных цмс добавил еще три своих...

Парадокс
Назовите все парадоксы которые вы знаете(очень интересно услышать) P.S.Ставьте цифорку с точкой...

If else парадокс)
if (!isset($fupload) or empty($fupload) or $fupload =='') { $avatar =...

Парадокс
Математический парадокс Допустим я у друга взял 100 рублей ,пошел в магазин и потерял их,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru