Category: C++

18
Янв
2022

Обработка Javacript с сайтов в С++

Подскажите пожалуйста, существуют ли библиотеки для С или С++, которые могут делать примерно следующее:
1)Предположим я получил HTML страницу с сайта.
2)Теперь нужно, каким то образом "обработать" весь Javascipt/jquery код, котор…

17
Янв
2022

Как подсчитать длину каждого слова в массиве?

будет забиваться массив до первого пробела
и надо подсчитать длину каждого слова в масииве (разделение между словами "\n")
я не понимаю как должен выглядеть код\алгоритм
int wd = 0;
char words[10000];
scanf("%[^’ ‘]s", …

17
Янв
2022

Как можно практиковаться на чистом С или какие создавать свои проекты?

Занимаюсь самообучением программирования, на данный момент это чистый С, для последующего перехода на С++. Для собственного развития, для создания портфолио, для возможного последующего входа на стажировку или вакансию – нужно самим делать…

16
Янв
2022

Как исправить мою задачу, помогите, пожалуйста

В каждом интервале строгого возрастания в массиве заменить все значения в данном интервале на среднее значение в интервале. У меня заменяет неправильно или заменяет не все, или заменяет не все интервалы строго возрастания.
#include <std…

15
Янв
2022

Перевод систем счисления. Выход за пределы диапазона [дубликат]

Дано число в системе счисления по основанию А. Нужно перевести его в систему по основанию А в степени В.
Input

Со стандартного устройства ввода вводятся натуральные числа A,B и число L-длина записи числа в системе счисления по основанию А…

14
Янв
2022

Не правильное чтение данных из буфера OpenCl

Программа OpenCl корректно работает с матрицами типа int. Но при замене int на float ядро продолжает работать корректно, а при чтении из буфера после выполнения ядра 0. Программа дополняет матрицу единичной.
Код ядра:
#pragma OPENCL EXTENS…

14
Янв
2022

Прототип: int f( char *a, char * b ); Отсортировать символы в алфавитном порядке. Поиск минимального в исходной строке, запись в выходную строку

Написать на языке "С" или "С++" функцию, удовлетворяющую следующим требованиям, вызвать ее в программе main( )
Прототип: int f( char *a, char * b );
Параметры: a – указатель исходной стpоки; b – указатель результирующей…

14
Янв
2022

P2P передача данных по UDP

подскажите точку старта. Задача: устройство IoT с выходом в инет, сервер с выходом в инет, белых IP нет, наобходимо данные по UDP отправлять на сервер. VPN не подходит, т.к. для Iot устройства нет VPN клиента. Прочитал про технолгию P2P, к…

13
Янв
2022

Удалить из текста указанное число пробелов C

Необходимо удалить из текстового файла указанное число пробелом, с перезаписью в другой файл и счётчиком, сколько удалений было произведено. Выполнение происходит в среде alt linux через компилятор GCC. Привожу пример кода:
#include <st…

13
Янв
2022

Почему не удаляет очередь?

Я только недавно начал разбираться с темой очередей сообщений и вот наткнулся на проблему, связанную с обработкой сигналов:
почему во время обработки сигнала SIGRTMIN+1 родительский процесс не удаляет очередь qid?
Извините за польский, дум…

13
Янв
2022

Как правильно иcпользовать семафоры в программе?

Я только недавно начал разбираться с этой темой и вот наткнулся на проблему:
как правильно в этом коде использовать семафоры, чтобы избежать ошибки (błąd blokowania semafora = ошибка блокировки семафора)?
Я полагаю, что дело просто в том, …

13
Янв
2022

Длинное слово – первое. Не набирает баллы

Нужно определить самое длинное слово в строке и поменять его местами с первым.
Если слов с максимальной длиной несколько, менять следует первое из них.
Input
Со стандартного устройства ввода вводится строка, соседние слова в которой раздел…

13
Янв
2022

👨‍🎓️ ТОП-18 бесплатных учебных курсов по C/C++ для новичков и профессионалов

Представляем вашему вниманию лучшие бесплатные учебные курсы по C/C++ как для начинающих, так и для продвинутых разработчиков.

Языки группы Си, созданные еще в 70-80-х годах прошлого столетия, до сих пор не теряют своей актуальности и входят в десятку самых популярных языков программирования. На них написаны операционные системы, игровые движки и огромное количество современных программ. Поэтому, для желающих их освоить и впоследствии получить востребованную профессию, мы подготовили подборку свежих бесплатных курсов по C/C++.


Coursera

Coursera – образовательная платформа, созданная в свое время профессорами информатики Стэнфордского университета, не перестает делиться актуальными знаниями по различным технологиям. В этот раз она предлагает бесплатное обучение по C/C++ в виде пяти онлайн-курсов, разделенных по категориям. Уровень каждого курса авторы сравнивают с экзаменами на пояс в спортивной школе по карате Киокушинкай.

Основы разработки на C++: белый пояс

Этот курс познакомит студентов с основами программирования на языке С++. Также он научит важным базовым конструкциям, расскажет о работе с типами данных, классами и функциями и поможет создать первое приложение.

Программа курса:

  1. Знакомство с искусством C++.
  2. Техника владения функциями и контейнерами.
  3. Медитация над алгоритмами и классами.
  4. Ката по вводу/выводу, исключениям и перегрузке операторов.
  5. Первое кумитэ.

Ко всем темам прикреплены практические задачи и тесты, а в конце обучения в финальном проекте вы создадите хранилище данных с функциями поиска, добавления и удаления.

Предназначен для начинающих разработчиков.

Длительность: 1.5 месяца.

Основы разработки на C++: жёлтый пояс

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

Программа курса:

  1. Целочисленные типы, кортежи, шаблонные функции.
  2. Тестирование и отладка.
  3. Распределение кода по файлам.
  4. Итераторы, алгоритмы и контейнеры.
  5. Наследование и полиморфизм.

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

Предназначен для начинающих разработчиков, прошедших первую часть обучения.

Длительность: 1.5 месяца

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека C/C++ разработчика».

Основы разработки на C++: красный пояс

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

Программа курса:

  1. Макросы и шаблоны классов.
  2. Принципы оптимизации кода, сложность алгоритмов и эффективное использование ввода/вывода.
  3. Модель памяти в C++.
  4. Эффективное использование линейных контейнеров.
  5. Move-семантика и базовая многопоточность.

В конце обучения – финальный курсовой проект, в котором вы создадите свою поисковую систему.

Предназначен как для начинающих, так и продвинутых разработчиков.

Длительность: 1.5 месяца.

Основы разработки на C++: коричневый пояс

Четвертый курс серии научит вас идиомам языка C++ и созданию легко поддерживаемых программ.

Программа курса:

  1. Эффективное использование ассоциативных контейнеров.
  2. Пространства имён и указатель this.
  3. Константность и unique_ptr.
  4. shared_ptr и RAII.
  5. Функции: принципы понятного кода.

Предназначен для опытных разработчиков.

Длительность: 1.5 месяца.

Основы разработки на C++: черный пояс

Продвинутые темы и знакомство с библиотеками и инструментами, без которых нельзя представить современную разработку на С++.

Программа курса:

  1. Неопределённое поведение и инструменты поиска проблем.
  2. Сериализация и protobuf.
  3. Хранение объектов в памяти и таблица виртуальных методов.
  4. Вектор своими руками.
  5. Задача «Электронная таблица».

Здесь научат вас самостоятельно решать повседневные задачи С-разработчика и покажут как писать эффективный код.

Преподаватели всех 5-ти курсов – практикующие разработчики Яндекса, E-Learning Development Fund и МФТИ.


GeekBrains: Основы языка C

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

Программа обучения:

  1. Знакомство с языком, на котором написано подавляющее большинство операционных систем.
  2. Термины и понятия используемые программистами.
  3. Двоичные вычисления (Булева алгебра).
  4. Оперативная память и как с ней работать.
  5. Разработка несложных программ и библиотек.
  6. Применение полученных знаний на практике.

Длительность: 14 уроков

Предназначен для новичков в программировании.


Udemy: Основы С++ и основы UE4

Курс по основам С++ и движка Unreal Engine 4 от разработчика игр Civilization V Mobile и Little Big City 2 Анатолия Свириденко, являющегося преподавателем учебного центра games.education.

Программа курса:

  1. Введение в язык программирования С++.
  2. Функции и Указатели в С++.
  3. Массивы и Итераторы в С++.
  4. Основы работы в движке UE4.
  5. Интерфейс и основные инструменты работы в UE4.

Серия видеороликов по теме без непосредственного общения с лектором. Предназначен для начинающих программистов и разработчиков игр.

Длительность: 6 лекций (17 ч 29 мин)


Stepik: Программирование на языке C++

Курс дает основы языка C++, уделяя внимание базовым принципам разработки программ и их компиляции. В нем изложены далеко не все рабочие моменты, а лишь небольшая часть фундаментальных знаний, необходимых начинающему разработчику.

Программа курса:

  1. Введение в язык С++.
  2. Механизм выполнения программ.
  3. Все о структурах и классах.
  4. ООП и дополнительные возможности С++.
  5. Шаблоны.

Предназначен для слушателей знакомых с синтаксисом C или похожих структурных языков (Pascal, Java, Fortran и др.).

Длительность: 41 лекция (10 ч)

Программирование на языке C++ (продолжение)

Продолжение предыдущего курса, рассматривающее возможности языка, не вошедшие в программу первых лекций. В частности, речь пойдет о нововведениях стандартов C++11 и C++14 и о работе со стандартной библиотекой шаблонов.

Программа курса:

  1. Продвинутые возможности языка.
  2. Стандарты С++11 и С++14.
  3. Обработка ошибок.
  4. Многопоточность, библиотеки и метапрограммирование.

Рассчитан на знающих синтаксис разработчиков, а также пользователей прошедших первую часть обучения.

Длительность: 25 лекций (7 ч)

Loftschool: Основы С++

Еще один небольшой курс по фундаментальным основам С++, в котором рассмотрены базовые концепции языка, основные операции и работа со структурами данных.

Программа курса:

  1. ООП в С++.
  2. Структуры данных.
  3. Наследование.
  4. Потоки и файлы.
  5. Шаблоны и исключения.

Рассчитан на знакомых со структурным программированием слушателей.

Длительность: 22 лекции (3ч 20 мин)

Itproger: Уроки C++

Несколько десятков лекций по С++ для чайников со всей необходимой информацией, объединенной в один курс. Здесь вы освоите принципы работы с наиболее часто встречающимися конструкциями языка, а также с его более сложными концепциями.

Программа курса:

  1. Основы С++.
  2. Базовые структуры данных.
  3. Создание первой программы.
  4. Классы, объекты, массивы, циклы, функции.
  5. Шаблоны.

Подходит для желающих изучить С++ с нуля.

Длительность: 26 лекций

RavesliУроки программирования на языке С++

Большой текстовый курс, объясняющий устройство языка С++ и программирования в целом. Написан простым, понятным языком, с большим количеством практических заданий, для тренировки вновь приобретенных навыков.

Программа курса:

  1. Базовые конструкции С++.
  2. Пошаговое создание игры.
  3. Графическая библиотека SFML.
  4. Уроки по работе Qt5
  5. OpenGL.

Подходит как для новичков в программировании, так и для разработчиков, желающих освежить свои знания.

Объем материала: 240 уроков


SimpleCode: Основы С++. Программирование для начинающих

Команда SimpleCode представила на всеобщее обозрение свой видеокурс по работе с языком программирования С++. Здесь вы поймете, как работать с структурами данных языка, освоите основные операции и инструменты, необходимые при создании первой программы.

Программа курса:

  1. Типы данных и основы синтаксиса языка С++.
  2. Функции и циклы.
  3. Работа с переменными и массивами.
  4. ООП в С++.
  5. Новые возможности языка.

Рассчитан на желающих освоить программирование на С++ новичков.

Длительность: 204 видеоролика

***

Далее рассмотрим небольшие серии обучающих видео, выложенные на Youtube.

Видеоуроки по программированию на C++ для начинающих и не только

Серия видеороликов по фундаментальным понятиям С++. Как и следует из названия, лекции будут полезны не только для новичков.

Длительность: 25 видеоуроков

«C++ с нуля»

Еще одна подборка обучающего видеоконтента для начинающих.

Длительность: 20 видеороликов

Курс по С++

Несколько видеороликов , объединенных в один курс

Длительность: 28 уроков

С++ программирование

Все что надо знать грамотному С-разработчику в небольшом курсе от известного блогера.

Длительность: 27 лекций.

Уроки С++

Этот авторский курс по С++ , посмотрело более 600 тыс. человек.

Длительность: 61 видео.

***

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

Материалы по теме

13
Янв
2022

Codenrock New Year Code Battle

Соревнование по алгоритмическому программированию. Нужно решить 15 задач на алгоритмы по мотивам IT сериалов. Задания распределены по уровню – от простых к сложным. Побеждает тот, кто решит большее количество задач за меньшее время.
— Читать дальше «Co…

13
Янв
2022

Исключения и зачем они нужны? [дубликат]

Объясните мне, пожалуйста, как начинающему программисту, зачем нужны исключения? try catch вот это всё. Они нужны только для поиска ошибок в коде и их исправления? Исключения не идут в релизную версию программы? Или идут и зачем и как они…

12
Янв
2022

Решения задачи с исходным кодом. Си

Описание:
С Си мало знаком, но сегодня нужно сделать так чтоб func win() заработала. Именно с этим исходным кодом. (без изменения)
Постановка задачи звучит именно так! И не удалось получить разъяснения.
#include <stdlib.h>
#i…

12
Янв
2022

Какой язык выучить?

Извините за столь глупый вопрос. Какой язык выучить, если я хочу заниматься ботами для мессенджеров, игр и тп. Написанием небольших программ. Возможно для бекенда. Пока что присмотрелся к c# и python.

12
Янв
2022

Очень долгое выполнение кода C#

Написал я функцию на TS, C++ и C#.
С++ в виде аддона для ноды.
C# отдельное консольное приложение.
результаты выполнения одного и того же кода (на разных языках) :
TS/JS 0.07ms
C++ 0.05ms
C# 65ms
Причем запуск просто пустой функции за…