Видеоурок как всегда на высшем уровне! Я рад, что Сергей в конце услышал мой внутренний голос и создал тип VECTOR. Ещё хочу немного от себя сказать, чтоб программирование изучать, мы учим математику, константы и радуемся, когда программа вычисляет сама дискриминанты. И спустя несколько лет выводим результат не в консоль, а в ui-окно, благодаря Сергею, нам всё это давно дано!😶
@AlexRootx Жыл бұрын
Очень познавательно, спасибо, Сергей!!!
@andredru4278 Жыл бұрын
Спасибо. Подача материала если и не иделальна, то очень близка к идеальной.
@anvarx1 Жыл бұрын
Спасибо за урок !!! Очень познавательно !!!
@MalenkayaPlomba Жыл бұрын
Спасибо тебе большое дружище, очень приятный урок. Было бы классно увидеть от тебя реализацию односвязного и двусвязного списка на Си! Добра тебе :)
@uchoba Жыл бұрын
ну хоть тут понятно все) Спасибо что помогаете разбираться в ЯП СИ)
@Lord_Nodus Жыл бұрын
После C я очень полюбил структуры, через них легко использовать общую память, в код программы достаточно скопировать определённую структуру, подключиться к памяти, и после задать указателю тип структуры, после можно спокойно по ней бегать и читать или писать данные.
@MrLeyt112511 ай бұрын
Классный вектор из одной точки, бро )
@DGT679 ай бұрын
19:10 верно ли что второй аргумент (непосредственно инициализированный в списке аргументов при вызове) будет скомпилирован и лежать в .text секции ? или там все таки в рантайме в вызове isum_vector будет выделено на стеке для noname аргумента ?
@alekskapitonov27387 ай бұрын
Спасибо.
@WhiteCap-z1e13 күн бұрын
Попытался в ООП в Си. Сделал функцию, принимающую объект типа моей структуры, сделал логику. Ниже написал структуру, в ней указатель на функцию. Компилятор говорит, что функция не знает такой тип, который принимает. Поместил функцию ниже структуры. Теперь указатель в структуре не знает, на какую функцию он ссылается. Вышел на балкон, закурил, долго думал, плакал.
@DGT679 ай бұрын
17:15 не удобнее ли будет в sum_vector аргуметы передать по ссылке: sum_vector(const struct tag_vector&, const struct tag_vector&) ?
@olegkomlev5 ай бұрын
Ссылки & есть в С++, но нет в Си.
@garrygoodrege255 Жыл бұрын
Добрый день! не планируете сделать курс платный/бесплатный про perl, регулярки, для души так сказать? Отличный курс про C!!!
@selfedu_rus Жыл бұрын
Спасибо! По perl нет, а регулярки для Python уже есть.
@AlexAlex-uj3co Жыл бұрын
Здравствуйте, интересное и познавательное видео. Можно ли каким-то образом узнать скорость выполнения программы и дать оценку например насколько быстрее выполняется код при передаче структуры в функцию через указатель, а не по значению? И в каких единицах измерения правильнее оценивать скорость выполнения кода (программы)?
@selfedu_rus Жыл бұрын
Скорость программ определяют, либо фактически по времени, либо по объему операций, используя концепцию Big O (О большое). Подробнее о ней в курсе по структурам данных.
@КузьмаМазуренкоАй бұрын
Когда заменил обозначение структуры псевдонимом, программа сработала на 17 тысячных секунды быстрее.
@МагомедИбрагимов-с8ъ Жыл бұрын
Сергей хотел бы узнать будет ли у вас курс по java на степике?
@selfedu_rus Жыл бұрын
не знаю насколько востребовано, сам курс по Java у меня провалился, не смотрят
@МагомедИбрагимов-с8ъ Жыл бұрын
@@selfedu_rus У меня к вам вопрос как к специалисту какой язык учить для бэкенда?
@selfedu_rus Жыл бұрын
@@МагомедИбрагимов-с8ъ зависит от компании, смотря что требуют. Если вообще, то PHP, Python, C# часто используются.
@АлександрКаптуров-с8и Жыл бұрын
Сергей, после данного курса Вы планируете перезаписать свой ранний курс по с++ или будет другая тема?
@selfedu_rus Жыл бұрын
Базу по С++ не планирую, а ООП, вроде нормально дано. Те уроки по основам С++ удалю после выхода этого курса.
@АлександрКаптуров-с8и Жыл бұрын
@@selfedu_rus Зачем удалять? Разве они плохие? Оставьте их пожалуйста для сообщества!)
@selfedu_rus Жыл бұрын
@@АлександрКаптуров-с8и убого там все, как то даже неудобно за них ))
@АлександрКаптуров-с8и Жыл бұрын
@@selfedu_rus Нельзя создать все курсы идеальными. Через несколько лет, возможно, Вы будете краснеть за курсы, которые сегодня считаются Вашими лучшими, ведь на тот момент выйдут Ваши новые шедевры! Зато, если Вы их не удалите, то по дате создания можно проследить Ваш рост как блогера и преподавателя!)
@ebjikkolu4757 Жыл бұрын
typedef struct { __I uint32_t PDID; } SYS_T; #define AHBPERIPH_BASE ((uint32_t)0x50000000) #define SYS_BASE (AHBPERIPH_BASE + 0x00000) #define SYS ((SYS_T *) SYS_BASE) Что скажете насчет такого? Я предполагаю ,что тут резервируется память размера int по адресу 0x50000000 и создается указатель на эту память в виде SYS структуры.Привет из мира микроконтроллеров
@unethicql6 ай бұрын
это не имеет отношения к видео. к тому же, чтобы понять, что делает данный код, нужно знать архитектуру и компилятор для этого кода
@ebjikkolu47576 ай бұрын
Разве? Создаётся структура , делается указатель на структуру . Да- это сделано через дефайны .Потом через этот указатель идёт обращение к структуре . Разница лишь в том , что указатель создаётся с конкретным адресом в памяти ,а не через маллок . Я это написал для общего развития . Показать как идёт обращение к памяти в МК. Чтобы понять данный код ,нужно знать язык си и не более ,да там есть переопределение __I ,все остальное читаемо
@unethicql6 ай бұрын
@@ebjikkolu4757 Смотри, вот грубо говоря ты написал: SYS_T* ptr = SYS; Что мы имеет? ptr - имеет адрес SYS_BASE на структуру SYS_T. Выделена ли память под нее? Если взять чистый си - нет. Но у микроконтроллеров есть куча нюансов, и например область памяти, например, с 0x000C до 0x00FFF можно использовать под свои нужды. Тогда да, тут ты взял просто указатель на ячейку памяти (ничего не выделяя). Но, например в ОС Windows такое может либо крашнуть программу, либо привести к undefined behavior.
@ebjikkolu47576 ай бұрын
Нет ,никакой памяти не выделяется . По сути адреса в памяти шестнадцатиричные заменяются на данные в структуре , это как переменная за которой хранится просто адрес в памяти . Конечно в виндовс тебе такого сделать не получится ,я думал это итак понятно
Вообще я не уверен, что компилятор копирует аргументы в константные параметры функции..
@selfedu_rus Жыл бұрын
Если найдете точный ответ, напишите!
@elliotalderson6609 Жыл бұрын
@@selfedu_rus Посмотрел, что по этому поводу пишут на stack overflow: пишут, что копируются. Я уверен, что не всегда (уж точно не в случае inline функций). Можно на godbolt проверить.
@selfedu_rus Жыл бұрын
@@elliotalderson6609 это совпало с моим пониманием, спасибо! P.S. в чистом Си inline-функции отсутствуют.
@elliotalderson6609 Жыл бұрын
@@selfedu_rus Тут Вы ошибаетесь, в Си есть инлайн функции
@oleg_kishinskii Жыл бұрын
На 9й минуте перестал понимать даже человеческую речь 😅