Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107

Предназначение языков C и C++

16.11.2017, 11:42. Показов 7275. Ответов 94
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую.
Есть несколько вопросов по C и C++. Прим. Вопросы адресованы тем, кто не является нубом в C и C++.
Итак:
1. Для кого C++?
В целом интересует ваше имхо кому нужно учить C++.
Если я допустим хочу разрабатывать игры, причём включая те, которые не требуют высокой производительности, текстовые онлайн MUD игры, при этом я не хочу писать движок с нуля, а использовать готовый, может ли мне подойти C++?
Поясню конкретнее. Дело в том, что мне обязательно нужно разрабатывать сервер на Linux. Тут 3 варианта. C/C++/Python.
C - многие движки MUD игр в основном именно на C. Но есть мнение, что на C сложнее писать, чем на C++.
C++ - много движков также имеется, но возможности языка шире, что замедляет процесс изучения.
Python - в целом хорош, по синтаксису, по библиотекам, но имхо не надежен. Я хочу его избежать, но рассматриваю в крайних случаях. Низкая производительность.
2. Тот же вопрос, что был первый. Только с C. Для кого C? Стоит ли мне вообще рассматривать C?
3. Говорят, что разработка на C гораздо труднее, чем на C++. На сколько это правда в отношении прикладного программного обеспечения?
4. И в отношении C, и в отношении C++, на сколько я много должен знать, если не собераюсь разрабатывать с нуля, а использовать готовые инструменты?
В целом я смотрел тот же circlemud 2000 года, там больше, чем основы C переменные, условия, циклы, указатели, не используется. В основном сама библиотека C.
5. Не знаю, как с C, но про C++ говорят, что для решения нужно много лет его изучать. На сколько это правда в моем случаи? Если я нацелен на готовые инструменты, нужно ли мне знать много?
6. Можно ли изучать одновременно C и C++?
В общем думаю тему вы уловили, потому приму любые рассуждения.
Всем заранее благодарен!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.11.2017, 11:42
Ответы с готовыми решениями:

Программа по изучению языков
Здравствуйте, помогите пожалуйста утопающему. Пишу прогу по изучению языков. Мне нужны ваши советы, как и где можно хранить данные?

С++ 4 и 5 поколение языков программирования
Является ли С++ языком 4 поколения? Пятое поколение определяет судьбу программистов С++ в позитивную или негативную сторону?

О целях c++ и других языков
Здравствуйте. Подскажите пожалуйста какие цели у c++, т.е что можно на нем написать (интересует высокоуровневое программирование), и если...

94
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.11.2017, 16:50
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от obivan Посмотреть сообщение
в Си нет шаблонов
Сейчас компайл тайм в основном удобнее писать с помощью constexpr.
Производители компиляторов уж очень просят не использовать рекурсивный инстанс шаблона для "подсчёта числа фибоначи в CT".
0
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
16.11.2017, 16:50
Цитата Сообщение от obivan Посмотреть сообщение
попробовать реализовать компайл тайм алгоритмы на С++, ах да в Си нет шаблонов ...
Никто вам не мешает написать кучу перегруженных функций
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.11.2017, 16:57
Цитата Сообщение от jahdjkhasjdhjah Посмотреть сообщение
написать кучу перегруженных функций
В Си нельзя делать перегрузку, но в общем то это всё равно потому что шаблоны тут используются не по назначению. Берётся их свойство инстанцироваться в момент компиляции. В си нет инструмента производить подсчёт в CT.
0
16.11.2017, 16:59

Не по теме:

MrGluck, да constexp хорошая штука тоже :) я просто к тому что это в си то не реализовать и в таких штуках смешно тоже было бы мерять производительность

0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
16.11.2017, 17:17
Цитата Сообщение от jahdjkhasjdhjah Посмотреть сообщение
Получились те самые 0,5 %, о которых я и упоминал.
1.
посмотрел провел серию запусков,
и добился ситуации,
когда время сишного кода оказалось хуже.

и что это доказывает?

ну, кроме того, что так результат не подтасовывают бенчмарки не делают?

2.
не понятно, что там с ключами компиляции.

Цитата Сообщение от jahdjkhasjdhjah Посмотреть сообщение
Дополнительно обратите внимание на размер программ
а вы обратили внимание, что ради единственной sprintf,
протащили тяжелый iostream?

и опять жеж, не понятно что там с конфигурацией сборки.

вы у себя дома попробуйте на своей среде своими компиляторами
выполнить бенчмарк.

а потом вместе с кодом выложите тестовые проекты.

вот тогда будет резон.

а покамест, я вижу лишь, что перфоманс у них одинаковый.

размеры бинарника плюс/минус несколько байт
никого уже давно не парят
0
77 / 50 / 16
Регистрация: 17.05.2015
Сообщений: 262
16.11.2017, 17:17
Цитата Сообщение от jahdjkhasjdhjah Посмотреть сообщение
Никто вам не мешает написать кучу перегруженных функций
Это уже С++
0
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
16.11.2017, 17:22  [ТС]
8Observer8, ооо, а вот и вы.
Почему, такие движки как oggre, хорошее решение.
0
зомбяк
 Аватар для TRam_
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
16.11.2017, 18:08
Цитата Сообщение от hoggy Посмотреть сообщение
а вы обратили внимание, что ради единственной sprintf,
протащили тяжелый iostream?
Кстати, аналогичные действия на собственно ostream будут выглядеть так: https://ideone.com/tTrgcd

Да, время больше на 40%, 9738582006 против 6940494115, но и возможностей по конфигурированию std::ostream гораздо больше.
0
16.11.2017, 18:14

Не по теме:

TRam_, можно такое добавить и поидее чуть быстрее будет

C++
1
2
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);

0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
16.11.2017, 18:26
Цитата Сообщение от TRam_ Посмотреть сообщение
Да, время больше на 40%
прежде чем заявлять что то подобное,
подумайте о том,
с какими волшебными ключиками
вы там сборку делаете.

https://habrahabr.ru/post/246257/
1
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
16.11.2017, 18:27
Вот вам самый веский аргумент!
http://harmful.cat-v.org/software/c++/linus
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
16.11.2017, 18:33
Цитата Сообщение от jahdjkhasjdhjah Посмотреть сообщение
Вот вам самый веский аргумент!
Линус уже давно не аргумент.
к его эксцентричности относятся снисходительно.

можете поискать, как он нашел баг в компиляторе gcc
и такой хай поднял. на все сообщество.
называя его поделием каких то недоумков,
который нельзя использовать для серьёзный вещей.

вот только сообщество поклало большой и толстый вуй.
и gcc, как и было запланированно - мигировал с сишки на с++

а вот это факт - это уже серьёзный аргумент.

компилятор стал слишком сложен.
что бы продолжать развивать его
на убогом языке си.
1
Падаван С++
 Аватар для obivan
447 / 261 / 89
Регистрация: 11.11.2014
Сообщений: 916
16.11.2017, 18:33
jahdjkhasjdhjah, написание на Си ведет к таким же костылям, во первых посты где линус жалуется на эесепшены(ну так в чем проблема пойти по пути Qt и отказатся от них ?), это будет штука как у меня есть история из жизни, где типок велосипедил на Си таблицу вирт функций а потом ей вы*вался, это все можно сделать но зачем, когда на плюсах легче ???
0
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
16.11.2017, 18:37
Что-то мы с темы съехали. Я где-то говорил, что С - единственный и правильный язык, истиная вера и т.д.? И что нужно использовать исключительно только его?
1
9991 / 2963 / 497
Регистрация: 05.10.2013
Сообщений: 8,134
Записей в блоге: 243
18.11.2017, 11:35
Цитата Сообщение от jonikster Посмотреть сообщение
Если я допустим хочу разрабатывать игры, причём включая те, которые не требуют высокой производительности, текстовые онлайн MUD игры, при этом я не хочу писать движок с нуля, а использовать готовый, может ли мне подойти C++?
Да, готовые игровые движки это хорошо, но когда вы создаёте тему, то указываете, что вы незрячий, потому что это накладывает определённые ограничения на выбор инструментов. Я помню вы в какой-то теме приводили пример, что один незрячий программист написал игру на Unity, но это не значит, что и вы сможете.

Цитата Сообщение от jonikster Посмотреть сообщение
8Observer8, ооо, а вот и вы.
Почему, такие движки как oggre, хорошее решение.
Вы действительно полностью незрячий или что-то всё-таки видите? Или вы так пошутили? Если вы зайдёте на страницу OGRE, то вы прочитаете на первой странице в кратком описании такие слова:
one of the most popular open-source graphics rendering engines
"графический движок". Если вы действительно незрячий, то о каком графическом движке может идти речь?

Цитата Сообщение от jonikster Посмотреть сообщение
текстовые онлайн MUD игры, при этом я не хочу писать движок с нуля, а использовать готовый, может ли мне подойти C++?
Пробовали искать в интернете: mud game engine? Я попробовал, например, есть готовый движок Node.js-based MUD engine. Но я помню, что в другой теме вы писали, что не хотите заниматься ничем связанным с вебом. А зря, потому что этот движок выглядит прилично, судя по количеству звёзд, фоков и обновлениям. Node.js приложения не очень сложно развернуть, например, на бесплатном хостинге heroku или на openshift и начать работать над игрой, а не тратить столько лет на выбор языка и инструментов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.11.2017, 11:35

Какой из языков си выбрать
Я студент 1 курса,и мы там изучаем си(2 часа в неделю),у нас профиль математика, и пока что для меня эти уроки легки и половину я и так уже...

Стандарты и стили языков программирования
Занимаясь программирование, например С++, иногда задумываешься, читая различную литературу и разбирая чужие коды программ, что большинство...

Изучение новых языков программирования
Всем привет! Я знаю C++ на уровне ООП (классы, наследование, шаблоны, исключения, перегрузка операторов, STL). Каждый раз, когда я...

Пересесть с языков высокого уровня на С++
Здравствуйте, я ActionScript3 разработчик и в данный момент рассматриваю возможность пересесть на с++ для возможности вести разработку под...

Программа помогающая в изучении иностранных языков в С++
Кто шарит в С++ помогите пожалуйста. Сам его только начал изучать самостоятельно, а уже дали такую задачу: Написать программу ,...


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

Или воспользуйтесь поиском по форуму:
95
Ответ Создать тему
Новые блоги и статьи
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru