Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
0 / 0 / 0
Регистрация: 25.12.2015
Сообщений: 2

Хочу научится программировать но не знаю с чего начать

31.01.2017, 22:08. Показов 24162. Ответов 206
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Меня зовут Александр. Хочу научиться программировать на языке . Опыта в этой сфере нету, но есть желание подскажите с чего начать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2017, 22:08
Ответы с готовыми решениями:

Хочу научится программировать микроконтроллеры, но не знаю с чего начать
здравствуете, я хочу научится программировать микроконтроллеров, но не знаю с чего начать, в гугле очень много книг по этой теме и я не...

Хочу научится писать парсеры. С чего начать?
Хочу освоить написание парсеров. Посоветуйте какие функции стоит изучить! Также буду благодарен, если подскажите где почитать про...

Хочу самостоятельно изучить СИ/СИ++,но не знаю с чего начать
1)Сначала лучше всего изучать СИ?Если да то какие плюсы мне это даст при изучении СИ++ ? 2)Посоветуйте хорошую литературу(если есть...

206
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,243
23.03.2026, 14:33
Студворк — интернет-сервис помощи студентам
Шаблоны спорный вопрос.
Для меня... Ну если его можно заменить несколькими строками кода,
ну зачем мне лишние файлы инклюдить?
А для вас не знаю...

merge_file (2).mp4
0
Заблокирован
23.03.2026, 15:21
Цитата Сообщение от Recrut_rf Посмотреть сообщение
Это конечно очень грубо и мне сейчас накидают.
Да, запросто.
В С++ много отличий и без выше перечисленного. Просто тонны.
Но если кто то использует только Си легаси возможности, то конечно, для него разница минимальная.
C++
1
2
3
   auto arr = {1,2,3,4,5};
   for(auto v : arr)
      std::cout << v << ' ';
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
23.03.2026, 15:42
Цитата Сообщение от Наталья8 Посмотреть сообщение
Для меня
"для тебя" выбор языка не критичен, поскольку ты используешь только базовые возможности языка.
"для тебя" должно быть без разницы - пишешь ты на С или на С++ или вообще на другом языке.

То, что в С++ есть почти всё то же самое, что и в С, это только преимущество С++ и надо только радоваться. Слово "почти" - ключевое слово, поскольку С++ не включает в себя С, а стало быть, тот, кто говорит, что С++ является надмножеством языка С, тот просто дурачок.

И вообще, С++ как раз создавался по той причине, что многим программистам язык С не устраивал и нужен был более мощный язык. "Просто так" ничего не реализовано в С++, всё имеет причину, в том числе, наличие всяких std::calloc, std::malloc, std::realloc. Вообще, изначально в С++ одним из важнейших принципов было сохранение совместимости с С. И почему именно С был выбран в качестве основы для создания С++ - это тоже не без причин.

Цитата Сообщение от Наталья8 Посмотреть сообщение
ну зачем мне лишние файлы инклюдить?
еще раз говорю - тебе не нужен С++. Когда он тебе понадобится, то ты тогда уже сам будешь знать, почему С не подходит и почему тебе нужен именно С++, причем почему тебе нужно именно то, чего нет в С, а не легаси функции в С++.
1
23.03.2026, 16:23

Не по теме:

Логично начальник..
Как надоела эта жвачка. А делать больше и не хрен.

0
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
23.03.2026, 16:43
000d60, да понятно, что синтаксических отличий чуть больше чем дофига, и да - в Си есть конструкции (и скорее всего их много) на которых С++ поперхнётся с кучей ошибок.
Речь не об этом синтаксическом сахаре коими являются всякие лямбды, авто и прочие автоматические распаковки/запаковки.
Речь о фундаментальных отличиях.

А если уж совсем упарываться - то никто не мешает в том же Си использовать ООП, ну или шаблоны. Только их самому придётся реализовывать, средствами самого языка.
0
Заблокирован
23.03.2026, 17:09
Цитата Сообщение от Recrut_rf Посмотреть сообщение
и да - в Си есть конструкции (и скорее всего их много)
Есть. Но обобщенно небольшой список, и ещё немного очень редко встречающихся.
И, чем дальше версии Си и С++, тем отличий больше.
Поэтому большой проект на Си, будет тяжело адаптировать под компилятор С++.
Но это и не нужно.
А вот в обратную сторону уже не работает никак.
То есть, логически, С++ обладает многими возможностями Си, но ещё больше имеет уже своих.
Я точно не помню, но кажется, главной особенностью является модель используемой памяти, что и даёт простор для нового ЯП.
Многие цели С++ были достигнуты уже давно, но развивается дальше.
И сложно представить что будет через лет 20.

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

Цитата Сообщение от Recrut_rf Посмотреть сообщение
Речь не об этом синтаксическом сахаре коими являются всякие лямбды
Вот именно, многие просто не могут отличить "сахар" от остального.
Лямбды - это не сахар.

Цитата Сообщение от Наталья8 Посмотреть сообщение
Как надоела эта жвачка. А делать больше и не хрен.
Учи С++. Ленин завещал, а он херни нести не будет. ()

Цитата Сообщение от 000d60 Посмотреть сообщение
Вот именно, многие просто не могут отличить "сахар" от остального.
Да и что такое этот "сахар", где он начинается а где заканчивается?
Классы - это тоже лишь сахар. Можно же вызывать функции с указателем на структуру.
Си = сахар для ассемблера.
И так далее.

Цитата Сообщение от Recrut_rf Посмотреть сообщение
в том же Си использовать ООП, ну или шаблоны
===
Цитата Сообщение от Recrut_rf Посмотреть сообщение
упарываться
И да, таки никто не мешает)
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
23.03.2026, 17:42
Цитата Сообщение от 000d60 Посмотреть сообщение
Си = сахар для ассемблера
кстати, в тех задачах, где раньше нужно было использовать ассемблер, в 2026 году можно вполне использовать С и даже С++

по мере увеличения производительности компьютеров, а также развития оптимизирующих компиляторов для языков С/С++, актуальность ассемблера значительно уменьшилась. Сейчас ассемблер используется только в редких узкоспециализированных задачах.
Однако, очень редко в 2026 кто-то будет писать что-то на ассемблере, поскольку качество генерируемого кода современных оптимизирующих компиляторов выше, чем может написать программист на ассемблере (начинающий или среднего уровня).

так что, пройдут годы и Python будет восприниматься низкоуровневым языком и для грядущих поколений он будет новым ассемблером, а языки С/С++ будут вообще чем-то типа машинного кода)))
0
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
23.03.2026, 20:49
Цитата Сообщение от Royal_X Посмотреть сообщение
так что, пройдут годы и Python будет восприниматься низкоуровневым языком и для грядущих поколений он будет новым ассемблером, а языки С/С++ будут вообще чем-то типа машинного кода)))
Да мне чёт кажется что сейчас надо тем, кто хочет в сферу разработки софта залезть, начинать не программирование изучать, а создание и работу со всякими ии агентами. Умение работать с Артифишиал Интеллидженс - как бы в будущем это не стало основным критерием отбора. Уж не знаю - хорошо это или плохо.

Добавлено через 10 минут
Цитата Сообщение от 000d60 Посмотреть сообщение
Лямбды - это не сахар.
Не хочу быть занудой, но вообще сахар.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
23.03.2026, 20:57
Цитата Сообщение от 000d60 Посмотреть сообщение
Лямбды - это не сахар.
Цитата Сообщение от Recrut_rf Посмотреть сообщение
Не хочу быть занудой, но вообще сахар.
давайте скажем, что лямбды это аспартам и на этом разойдемся))
0
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
23.03.2026, 21:02

Не по теме:


Цитата Сообщение от Royal_X Посмотреть сообщение
давайте скажем, что лямбды это аспартам и на этом разойдемся))


да без проблем
0
Заблокирован
23.03.2026, 22:41
Цитата Сообщение от Recrut_rf Посмотреть сообщение
Не хочу быть занудой, но вообще сахар.
Так что же такой "сахар", дай своё определение?

Это такой "сахар", что для "замыкания" в различных ЯП создают отдельные ключевые слова и синтаксис?
Если Range-based for loop ещё можно назвать сахаром.
То auto и лямбда - нет, моё имхо.

Что бы постараться заменить код с лямбдами, на без, нужно изрядно попотеть, и не у каждого получится. И это будет просто попытка повторить поведение кода. С "сахаром" же всё проще должно быть?
Попробуй (и это ещё без захватов):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
auto get_closure(){
   return [](int a)mutable{
      static int i = a;
      return i+=a;
   }; 
}
 
int main(){
   auto a = get_closure();
   auto b = get_closure();
   std::cout << a(1) << ' ' << a(1) << ' ' << b(a(2));
}
Ещё назови корутины и концепты сахаром.

Добавлено через 23 минуты
up:
Цитата Сообщение от Recrut_rf Посмотреть сообщение
Не хочу быть занудой, но вообще сахар
Я кажется понял. По твоему, С++ - это Сахарный Си. И должен он называться СС.
Теперь буду знать)
0
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
23.03.2026, 22:48
000d60, Оу - да не сахар это не сахар. Просто синтаксис языка и новые конструкции в нём.

Цитата Сообщение от 000d60 Посмотреть сообщение
Ещё назови корутины и концепты сахаром.
как то не приходилось работать с этим - так что хз что это такое...

Цитата Сообщение от 000d60 Посмотреть сообщение
То auto и лямбда - нет, моё имхо.
я не спец по С++ поэтому не надо меня слушать, но всё таки лучше на собесах вот так вот сразу не бомбить а то можно и не пройти. Но повторюсь, я не спец по С++
0
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,243
23.03.2026, 23:19
Это по ходу для очень умных.... Я не очень...

0
 Аватар для Наталья8
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,243
23.03.2026, 23:29
А чё это такое?
Чё это вот так оно выдаёт вот такое...

А вот эдак оно выдаёт вот эдакое?
0
Заблокирован
23.03.2026, 23:38
Наталья8, тут нужно вспомнить порядок выполнения операторов.
Суть не в этом.
Я не желал специально излишне запутать.

Разбирай без UB:
C++
1
2
3
   std::cout << a(1) << std::endl;
   std::cout << a(1)  << std::endl;
   std::cout << b(a(2)) << std::endl;
2
3
10
0
 Аватар для Storm Screamer
5242 / 1548 / 120
Регистрация: 21.04.2013
Сообщений: 9,060
24.03.2026, 03:14
Цитата Сообщение от Usaga Посмотреть сообщение
Зачем в 2026м году Си и С++ вообще могут быть нужны? Особенно в контексте разработки игр?
Во-первых, часто С/С++ используется для разработки портов игр. Загляните, например, сюда: https://osgameclones.com/. Вверху есть вкладка-фильтр по языкам программирования. Большинство проектов именно на С/С++.

Во-вторых, ныне масспопный у многих контор-разработчиков игр Unreal Engine 5 использует С++.

В-третьих, даже если код игры пишется не на С/С++, то под капотом у инструментария разработки (в т.ч. движки) и графических API все равно сидит С/С++. DirectX 12, Vulkan, графический API PS5 - все на C/C++.

В конечном итоге получается, что чтобы серьезно заниматься разработкой игр от С/С++ не уйти, что сейчас, что 30 лет назад. Можно, конечно, сидеть и писать скрипты игровой логики на С#, но на этом все и ограничится.
1
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
24.03.2026, 09:59
Цитата Сообщение от Storm Screamer Посмотреть сообщение
чтобы серьезно заниматься разработкой игр от С/С++ не уйти
Судя по играм, которые сейчас выходят, особенно на Unreal Engine 5 - серьёзно ими уже давно не занимаются.....
извините, я побомблю:
Всё засрали этим пластиковым анриалом!!!!!!
Пи....ы!!!
Извиняюсь - бомбить закончил
Абсолютное большинство дальше блюпринтов наверняка и не заходит. Сам в прошлом году начал изучать Unreal Engine 5 - давно хотел ну и решился таки, - так там в код лазить по сути и не надо вообще. Он сам всё сделает... Правда курс полностью я так и не прошёл - на работе загрузили. Дальше мож и в коде пришлось бы поковыряться. В общем не до него стало, но в будущем надо будет наверстать.

Вот Кингдом Кам Деливеранс 2 - вот это круто и это на CryEngine - вот там, возможно, плюсы очень даже нужны. К тому же по слухам - разрабы Кингдома сами сильно перелопатили движок. На анриале мало кто этим заморачивается, так что знание плюсов тут скорее как бонус и не более.

Интересно, что поляки сделают в грядущем Ведьмаке на анриале...
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
24.03.2026, 10:33
почему ты так решил
Большинство фреймворков напиисано на плюсах. Логику обычно пишут на скриптах. А скрипты накручены поверх фреймворков. Например язык Lua, который очень легко встраивается в C и C++. При этом узкие места все равно приходится писать на тех же плюсах. А то и ассемблер задействовать. Я понимаю, что на шарпах тоже игры создаются. Но это экзотика. Плюсы как бы стандарт в игровой индустрии.

Добавлено через 19 минут
пройдут годы и Python будет восприниматься низкоуровневым языком и для грядущих поколений он будет новым ассемблером, а языки С/С++ будут вообще чем-то типа машинного кода [/QUOTEпройдут годы и Python будет восприниматься низкоуровневым языком и для грядущих поколений он будет новым ассемблером, а языки С/С++ будут вообще чем-то типа машинного кода
ИИ будет прямо в машинный код, так что ЯП вымрут как динозавры.))
Единственный язык, который переживет ИИ апокалипсис, это будет C.)
Кстати если генерить прямо в машиннный код то легче формализовать алгоритмы, потому что там надо учитывать состояние, а нынешние тенденции в развитии языков пытаются уйти от состояния.
Я не идиализирую С. Однако, его достоинствами явлется всё, за что его критикуют.
0
 Аватар для Recrut_rf
389 / 334 / 66
Регистрация: 14.10.2014
Сообщений: 1,475
24.03.2026, 10:46
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Единственный язык, который переживет ИИ апокалипсис, это будет C.)
Ну ХЗ - поживём увидим. Вот перепишут мелкомягкие свой Windows с Си / С++ на Rust и начнет потихоньку загибаться Си да С++ наверное, тоже. Останутся они только во встроенных системах, да и то не во всех. Для железа ведь свои языки существуют....
0
Модератор
Эксперт Java
 Аватар для alecss131
2894 / 1400 / 412
Регистрация: 11.08.2017
Сообщений: 4,483
Записей в блоге: 2
24.03.2026, 11:34
Цитата Сообщение от Recrut_rf Посмотреть сообщение
так там в код лазить по сути и не надо вообще. Он сам всё сделает... Правда курс полностью я так и не прошёл - на работе загрузили. Дальше мож и в коде пришлось бы поковыряться. В общем не до него стало, но в будущем надо будет наверстать.
Зависит от курса, обычно курсы код и блюпринты не смешивают, если курс начал на блюпринтах, то на них и закончит. Обычно кодовые курсы сразу с кода и начинают, хоть апи в движке на блюпринтах и плюсах очень похож, но различия тоже есть, хотя тут больше дело в специфике написания кода.
В движке свой диалект плюсов, с блекджеком и сборщиком мусора и рефлексией. Хочешь не хочешь, но в движке есть виртуальная машина со сборщиком мусора в которой крутятся блюпринты от которой никуда не деться. Плюсовый код в движке это больше расширение функционала блюпринтов. В3 версии был свой язык, потом они перешли на плюсы, на сколько знаю сейчас они тоже смотрят в сторону своего языка внутри, который сейчас вроде используется в фортнайте, Verse. Они по идее не будут убирать поддердку плюсов и блюпринтов, но могут сделать главный упор/акцент на этом новом языке.
Кликните здесь для просмотра всего текста
Даже простая логика в Verse выглядит компактно и выразительно. Например, типовой шаблон устройства с обработчиком нажатия кнопки:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using { /Verse.org/Simulation }
using { /Fortnite.com/Devices }
 
my_device := class(creative_device):
 
    @editable
    Button: button_device = button_device{}
 
    @editable
    Door: moveable_door_device = moveable_door_device{}
 
    OnBegin<override>():void =
        Button.InteractedWithEvent.Subscribe(HandlePress)
 
    HandlePress(Agent:agent):void =
        Door.Open()
В этом фрагменте устройство подписывается на событие кнопки и при срабатывании открывает дверь. Такой подход прямо встроен в API UEFN и не требует лишних обёрток

Цитата Сообщение от Recrut_rf Посмотреть сообщение
На анриале мало кто этим заморачивается, так что знание плюсов тут скорее как бонус и не более.
И нормальные студии движок тоже сильно модифицируют под себя. То что большинство используют то что есть не меняя, даже скажу больше не сильно углубляясь, не делает движок плохим. Как и со всеми инструментами надо его правильно и грамотно использовать
Цитата Сообщение от Recrut_rf Посмотреть сообщение
это на CryEngine - вот там, возможно, плюсы очень даже нужны. К тому же по слухам - разрабы Кингдома сами сильно перелопатили движок
А что еще ожидать от мертвого движка? У него на гите последний коммит был аж 4 года назад, как и последний релиз. На сколько помню у него помимо плюсового апи есть и шарповый и думаю шарповый чаще люди используют как и студии. Игр на нем выходит около нулевое количество.
Вроде Lumberyard был основан на CryEngine и который в результате преобразовался в Open 3D Engine (O3DE), который в свою очередь тоже не сильно живее края.
МОжет в свое время край и был хорошим и прорывным, но он заброшен и смысла его изучать использовать нету. Сейчас технологии быстро развиваются и выпасть очень легко.
Цитата Сообщение от Recrut_rf Посмотреть сообщение
Останутся они только во встроенных системах, да и то не во всех. Для железа ведь свои языки существуют....
Какие например? Ассемблер, Си и базово С++. Ничего другого в голову не приходит.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.03.2026, 11:34

Хочу научится программировать
Здравствуйте! Не знал в какую тему написать, но в данном случае мне нужно что-то на подобии алгоритма. Я хочу самостоятельно научиться...

Хочу создать программу с GUI, не знаю с чего начать
Хочу написать очень простенькое десктопное приложение с GUI, но не знаю как. Оно должно состоять из инсталлятора, быть с иконкой и...

Хочу создать свою соц. сеть, но не знаю, с чего начать
Хочю создать свою соц. сеть! Но совсем нету опыта делать движки,буду всем кто в этому розбираеться благодарен эсли дадите хорошие ...

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

Хочу научиться писать сетевые приложения под windows, не знаю с чего начать
Здравствуйте, Хочу научиться писать сетевые приложения под windows, не знаю с чего начать? Подскажите пожалуйста, знаю c++ на уровне...


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

Или воспользуйтесь поиском по форуму:
160
Ответ Создать тему
Новые блоги и статьи
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
Текстовый слайдер с нумерацией страниц и кроссбраузерность.
russiannick 18.07.2026
Один мой друг написал текстовый слайдер с нумерацией страниц. Сегодня я расскажу как он умудрился подружить его с кроссбраузерностью. Очевидно сложно угодить с шириной каждому браузеру. Один крадет. . .
Грибы - это мемы, дерево - это человек. Применение микоризной модели к теории меметики Докинза.
anaschu 18.07.2026
Меметический изоморфизм теории «всего»: Грибная сукцессия как модель эволюции идей Докинза Базовый код системы ОДУ микоризной сукцессии описывает не просто биологию, а универсальную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru