я НИКОГДА, НИ-КО-ГДА не писал комментариев к видео, но тут, решил освежить некоторые вещи в памяти, как же жаль, что мне сразу так не объясняли, суть даже не в том, что я открыл для себя что-то новое, а просто с сожалением вспомнил процесс того, как я пару лет назад понимал это и как мне это объясняли. Приятно смотреть. Супер!
@nikolayshishkin6293 Жыл бұрын
И нашёл отличную видео-лекцию, когда в ней уже нет нужды😆
@Sentinel-14 жыл бұрын
Лучшее объяснение, что я видел. Всё по существу и без лишнего словоблудия.
@КекЛол-й3ы Жыл бұрын
Именно, я смотрел много видео и читал многое, но везде либо вскользь говорится или много воды, а тут четко с примерами все объяснили представил, закрепил, очень благодарен
@ЛеопольдКотов-к3щ6 жыл бұрын
Топовый препод
@evgeniygazetdinov16204 жыл бұрын
бог
@verbof25272 жыл бұрын
Действительно толково объясняет
@ВенераШпак-х3е2 жыл бұрын
@@evgeniygazetdinov1620 это щ енот
@sergepisarsky20382 жыл бұрын
Оказывается можно абстрактные вещи, которыми изобилует программирование, объяснять на понятном языке. Но такой стиль, к сожалению, встретишь не часто, совсем не часто. Я после первых лекций в универе по основам программирования испытал настоящий стресс, а от этой лекции - положительные эмоции, т.к. изложенный материал не оставил пробелов в понимании. Запомнить понятный материал куда как легче, чем материал с белыми пятнами в понимании. Респект профи
@user-sq8bcgs6zq8nАй бұрын
Это и есть профессиональный преподаватель.
@КотТоля-ж1ч5 жыл бұрын
Эх вот бы все преподы умели так доходчиво и интересно, с юмором объяснять....)
@kotnesobaka30805 жыл бұрын
Жалко нельзя поставить много лайков, Спасибо Тимофей за внятное и понятное объяснение!
@nik21516 жыл бұрын
После буквы Ы объяснил то, что я не встречал ни в одном учебнике.
@andreieliseev15164 жыл бұрын
Тимофей Хирьянов, спасибо вам за видеоуроки, не каждому дано так доходчиво рассказывать!
@fontes56972 жыл бұрын
Как же это прекрасно, самое толковое объяснение темы из тех что видел, СПАСИБО ВАМ ОГРОМНОЕ!
@youtubeuser46844 жыл бұрын
Офигеть препод! Талант! Никакие курсы не нужны и универы
@blackmass49254 жыл бұрын
Вот это я понимаю: дистанционное образование. Преподавателю поклон.
@alexandrponomarenko41273 жыл бұрын
23:32 - эта САМОЕ важное и простое объяснение, почему первый элемент всегда имеет индекс 0! Никто никогда мне не мог этого нормально объяснить, а тут... просто браво!!!
@evgenykonovalov48704 жыл бұрын
Очень очень хорошая подача материала, чувствуется реальное понимание как преподнести информацию, преподаватель обладает хорошим багажом знаний. огромное уважение!!!!!
@iloveariii2 ай бұрын
Лучший преподаватель, главное с харизмой!!!!
@imlaladede12902 жыл бұрын
Вы лучший преподаватель!!!!!!!! Спасибо огромное за такое прекрасное объяснение!!!!!!!!!!!!!
@juvusart5 жыл бұрын
Спасибо! Очень круто объяснили одну из самых сложных тем в си!
@oleholeynikov86594 жыл бұрын
ну просто хочется обнять таких людей, преподаватель с талантом)) очень емко, понятно и на простых примерах
@yuriilipaiev78114 жыл бұрын
Преподаватель вселенского масштаба)) Сложные вещи простым языком. Очень рад что нашел этот канал. Тимофей, спасибо Вам за труд!
@Антон-з6у5 жыл бұрын
Только внимательный зритель сможет увидеть под рубашкой застегнутой под последнюю пуговицу и повышенной тональностью голоса(что дает ложное представление "типичного программиста"), хорошую осанку и четко поставленную дикцию. Спасибо Вам за этот урок, многие вещи прояснились!
@Video-zo5oe5 жыл бұрын
Что значит "типичный программист"? Что все к нам прикопались, зависть берет, шаблоны ваши рвем? Завидно, да, ненавидели нас пока бухали и смотрели телевизор вместо учебы, а теперь зло берет, что нам служить приходится? Как насчёт типичного экономиста что работает таксистом, как насчёт типичного юриста что работает охранником?
@744c2 ай бұрын
Вау, ни в одном из учебников так доходчиво не объясняют
@art8fact1885 жыл бұрын
Спасибо Вам огромное, Тимофей! Только вы корректно объяснили суть положения звёздочки. Все остальные ставят как попало без объяснения и ломают всю логику. После этого видео перемещаю Вас на моё 1е место в рейтинге преподавателей программирования )))
@TheCxnine4 жыл бұрын
Звездочку ставят к переменной, а не к типу, потому что кокда указатель передается в определении функции fn( int *p )он там уже пишется без типа { *p = 10; }
@denisd77434 жыл бұрын
@@TheCxnine так вроде мужик сказал что похер где ставить звездочку если звездочка указывает на адресный тип
@ufi_ded4 жыл бұрын
+++, читал кучу учеников, не мог разобраться, первое видео на ютуб и так повезло, лучший препод
@Mani_Fast2 жыл бұрын
Каждая секунда бесценна, спасибо вам
@psg5_prog3 жыл бұрын
Спасибо вам батюшка за прекрасную лекцию про указатели.
@linkjeinson7705 жыл бұрын
Спасибо! Вы лучший препод в мире!)
@ИгорьПанькин-ъ7л3 жыл бұрын
Лучшее объяснение, Ваш канал просто находка , спасибо!!!
@McGewen4 жыл бұрын
даже просмотревь половину видео все очень прояснилось, вот это дядька, уважуха тебе! посмотрев до окнца - протсо апплодирую стоя!
@bookuha3 жыл бұрын
Вы лучший! Сижу тут, нервно хихикаю, от того, что наконец-то осознал
@reddalailama45944 жыл бұрын
Офигеть как всё подробно и наглядно... Я в шоке. Автор прекрасный учитель. Желаю как можно больше подписчиков
@aef1hfqdcxaqwxxqsxqgvbnr7973 жыл бұрын
как раз из-за указателей вылетел в свое время из универа. Си++ был на первом курсе а асм уже на втором. Спасибо за понятно изложенный материал!
@UFO265 жыл бұрын
«Любимая, я тебя поведу к самому краю Вселенной! Я подарю тебе эту звезду, светом нетленным будет она озарять нам путь в бесконечность…»*
@7gennews2 жыл бұрын
Все это знал, но даже тут вы смогли показать пару интересных вещей и еще лучше уложить все это в голове. Как всегда - видео лучшее на ютубе.
@SunSay3 жыл бұрын
В Адресном языке программирования (1955г.) можно было ставить n звёздочек перед указателем и это имело очень большой смысл ("штрих-операция"). "Штрих-операция" (разыменование указателя) была апаратно реализована на ЭВМ "Киев" в 1955г.
@adilzhenisov2818 күн бұрын
Отличный урок, объяснил доступно👍
@user-marrusia224 жыл бұрын
Как хорошо, что нашла ваш канал! Спасибо большое за видео, очень понятно:)
@mov_r16_r175 жыл бұрын
Хорошее объяснение. Понравилось, что Тимофей подчеркнул, что * в объявлении - это не операция разыменования (мне больше нравится термин "ссылка по указателю"), а модификатор типа. Поэтому я предпочитаю объявления типа int* ip, вместо int *ip.
@Mitaleko10 ай бұрын
Как здорово, очень понятно и по существу
@robertnewman882410 ай бұрын
Браво ! Лучшее объяснение !
@IgorAlov Жыл бұрын
На самом деле, все очень круто, но указатель, правильнее будет использовать тип void *, потому что размер ячейки под адрес в памяти будет равен, по сути разрядности процессора. Int * частный случай, который говорит о том, на какой тип данных представлен по конкретному адресу в памяти. В данном случае у вас int, но там может быть например char или вообще структура.
@dizogdizog259122 күн бұрын
Тимофей !!!Спасибо Вам большое
@Дмитрий-й1и7л4 жыл бұрын
огромное спасибо за видео. Было много непонятного до вашего объяснения.
@ГеоргийОрлов-г5в4 жыл бұрын
То неловкое чувство, когда тебе 40, а ты смотришь курс для школьников. Эх, в наше время таких преподов не было...
@tishafeed80854 жыл бұрын
никогда не поздно учиться
@catastrophic3709 Жыл бұрын
Тимофей, Вы просто лучший!
@АлексейКлоков-б1з Жыл бұрын
Очень важный урок для меня. Спасибо вам
@ГеоргийОрлов-г5в4 жыл бұрын
Я бы посоветовал Тимофею попреподавать ассемблер на микроконтроллерах AVR. Они очень простые в изучении, там все эти адреса можно прописывать вручную и очень хорошо разобраться.
@Gena-ku7if4 жыл бұрын
Лучшее объяснение, реально....
@ufi_ded4 жыл бұрын
Шутку про пять звёздочек заценили) Спасибо за понятное объяснение!
@rmgear68453 жыл бұрын
Уважаю за доходчивость объяснения
@AspireM34005 жыл бұрын
Замечательный видеоурок, все понятно и по полочкам разжевано. С такой подаче наверно и динамические массивы будут по зубам любому тугодуму )))
@АлексейЭмильевич5 жыл бұрын
Блистательно объясняет!
@Blendershick5 жыл бұрын
Спасибо огромное! Лучшее объяснение)
@maxframe44154 жыл бұрын
Мои глаза открылись... 😮. Спасибо!
@МихаСёмин-п1т5 жыл бұрын
Спасибо большое за уроки, объясняете всё очень доходчиво. Только не совсем понятен смысл употребление указателей. В данном примере, можно было без и указателя присвоить переменной значение
@deitven96312 жыл бұрын
Огромное спасибо за качественный контент!
@VasilyMT3 жыл бұрын
Отличное лаконичное объяснение.
@cat_amanita4 жыл бұрын
Указатели это моя самая любимая тема в Сишнике. И пожалуй это самая важная тема в этом языке. На указателях можно даже ООП изобразить. К примеру виртуальные функции из С++ можно сделать на Си с помощью указателей на функции. Я вообще недолюбливаю С++ и обожаю Си. Ибо указателей мне достаточно чтобы решить любую задачу. Многие сложные задачи можно решать введением дополнительного уровня косвенности. Так вот указатели какраз и позволяют мне вводить дополнительный уровень косвенности. Указатель на указатель на указатель. На Сишнике можно писать в ООП стиле именно благодаря указателям. Правда я почти никогда не использую ООП, т.к. считаю его вредным. Поэтому и не люблю С++ и Java. Я знаю 10 языков и мне часто так нехватает нормальных указателей из Си. Я бросил NodeJS, надоел он мне. Вернулся к любимому Си. 8 лет на JS писал и вдруг резко бросил
@Магаоев-ш5з2 жыл бұрын
Шикарно. Блестящее объяснение
@archiechellaut94833 жыл бұрын
Большое спасибо вам за полезное видео, Тимофей!
@ammonjerro3962 жыл бұрын
Хорошее объяснение. Я даже понял как работает. Вопрос - а зачем нужны все эти ссылки и указатели и почему напрямую не обратиться к переменной?
@cat_amanita4 жыл бұрын
Я в восторге от этого видоса :)
@Minas__Morgul4 жыл бұрын
Спасибо вам за ваши уроки!!!
@Vovchirshtain2 жыл бұрын
Просто лучший 👍💯
@beehummingbird4744 Жыл бұрын
Запихал его туда . топовый преподаватель . 😁😁😁 .
@pattypr04 ай бұрын
Я 10 лет не мог понять, что делают эти сраные указатели и как с ними работать. Но теперь как понял!
@ИсламГашимов-э3н4 жыл бұрын
Вообще мощно . Адреса это бомба
@KrassRome2 жыл бұрын
да - Вот дом, который построил Джек... Но все равно классно и доходчиво.
@SecretSecret-c7o3 жыл бұрын
Лучший, спасибо за лекцию
@ukrainianeye25453 жыл бұрын
Супер! ОГРОМНОЕ СПАСИБО!
@epheymind84752 жыл бұрын
Благодарю! отличное объяснение
@christferna2 жыл бұрын
Спасибо за лекцию!
@DeadnWoon3 ай бұрын
Можно ли обойтись без указателей, как явления - вот в чём вопрос?.. Нет, с адресами в памяти работать придётся - но нужны ли для этого специальные сущности или это просто синтаксический сахар? Если мы знаем размер адреса (который, видимо, традиционно равен размеру машинного слова), то просто берём целое (знаковое или беззнаковое, как нам удобнее) и храним в нём адрес. Отмечаем в блокнотике или где ещё размер того, адреса чего мы собираемся хранить - и всё! Если в языке существует некий оператор или функция, позволяющий найти ближайшее подходящее место в куче, ищем то место. Если в языке есть оператор или функция, позволяющие разместить переменную по конкретному адресу, используем его! В итоге исчезает вся проблема контекстной зависимости всей этой символики с её звёздочками и амперсандами. Просто работаем с адресами, как с целыми беззнаковыми числами.
@Nikita_Pro892 жыл бұрын
Смотрел год назад, вообще ничего не понял. Посмотрел сегодня - понял всё))
@vitalic853 Жыл бұрын
Однозначно лайк, спасибо
@billlanc9461 Жыл бұрын
Идеальное пояснение
@ИгорьВашкевич-з4у Жыл бұрын
Спасибо! Супер!
@АртёмМингазов-е8з4 жыл бұрын
Огромное спасибо за видео
@Video-zo5oe5 жыл бұрын
Переменная что хранит адрес переменной которая сама хранится по какому-то адресу
@rattingmage94754 жыл бұрын
Переменная равносильна адресу, указывающему на ячейку в памяти.
@БогданБородулин-э9р2 жыл бұрын
Все хорошо, только не понятно зачем это в итоге нужно, я про указатели. Если у нас есть переменная зачем нам обращаться к ней не по ее имени, а по адресу. Хотелось бы понять для чего это делается и какие преимущества это дает.
@ViktorRy22 жыл бұрын
На 21:10 в выражении A[i] = *(A + i) какого типа должна быть переменная i? Если она типа char/short/int, то в правой части выражения перед сложением будет осуществлено её приведение до типа int*?
@ЕвгенийЯ-щ6ъ2 жыл бұрын
Ого, круто, можно делать переменные с адресами переменных который сами лежат на каком то адресе и его тоже можно записать в переменную. А можно вопрос? Зачем это надо и где используется. Чувствуешь себя как на уроке, когда час объясняли что-то сложное, а зачем оно нужно так и не сказали
@Divon895 жыл бұрын
Отлично и внятно рассказал!
@fen-siz3 жыл бұрын
на столько вопросов дал четкий ответ, а еще и до половины не досмотрел
@nimgvae4 жыл бұрын
Шикарная подача.
@jimshtepa54232 жыл бұрын
в 20:20 производится разыменование А, получается разыменование можно выполнить не только указателя, но и массива или переменных любого типа, даже примитвов?
@DodgerEcho2 жыл бұрын
У меня один вопрос, зачем это надо, там где две звёздочки, три, ведь можно сделать простым способом например через присвоение переменной i другого значения, ну или хотя бы через *pi = ... Зачем остальные сложности?
@wizard_still4 жыл бұрын
действительно понятно, еще бы про флаги такое найти
@Ma_X644 жыл бұрын
Прикольно было бы разложить по элементам массива их собственные адреса.
@hiler8444 жыл бұрын
важно знать, что массив это еще непрерывный блок памяти, потому что в в оперативке может и не найтись такого непрерывного места.
@Krotonyasha2 жыл бұрын
Топовое объяснение!
@cat_amanita4 жыл бұрын
В языке Nim мне очень нехватает арифметики указателей, поэтому решил использовать Nim и Си вместе. На 90% программу напишу на Си и 10% на Nim. Эти языки идеально сочетаются, потомучто Nim транспайлится в Си и только потом компилируется. Полгода уже юзаю Nim и я им очень сильно доволен. Но мне там нехватает единственной вещи, нормальных блин указателей. Они там есть, но ими пользоваться нифига неудобно, поэтому решил переписать весь свой код на Си. Ну не весь конечно, ибо высокоуровневый код лучше оставить на языке Nim, а низкоуровневые функции переписать на Си. Т.е. переписать те участи которые требуют максимальной скорости, те участки где так и просятся указатели. Ибо я люблю арифметику указателей, хоть она и опасна. Зато позволяет достичь очень высокой скорости
@proletarian5 жыл бұрын
Указатели это гениальнейшая штука
@иди_поешь3 жыл бұрын
всё очень понятно, спасибо
@hannahr50375 жыл бұрын
Тимофей, Спасибо!
@sergeypyatkovskiy18085 жыл бұрын
Отличное видео
@yesleebeats83012 ай бұрын
Я понял, спасибо 😊
@arturssitdikovs44805 жыл бұрын
Очень понятно. Спасибо!!!
@gnot7900 Жыл бұрын
Я понял так, разыменование это чтение адреса из байт, переход по этому адресу, чтение байт (либо снова чтение адреса и цикл продолжается)
@forsink7289 Жыл бұрын
Спасибо большое
@СергейМалышев-т9у4 жыл бұрын
Класс, но жаль что на java не работаешь
@Alexcei64rus5 жыл бұрын
Кто из 21?
@dmarsell5 жыл бұрын
)))
@segameserver5 жыл бұрын
Согласен, тема тяжелая.))
@blackmass49254 жыл бұрын
Alexcei64rus Из 2021-го года?
@Alexcei64rus4 жыл бұрын
@@blackmass4925 школы 21
@user-dh4zm7tq1y4 жыл бұрын
ну мне 21, так что я тоже в каком-то смысле из 21
@namename20313 жыл бұрын
Одно не понимаю. Если мы заносим адрес в переменную, то почему на выходе получаем значение этой переменной на экране, а не её адрес? Я думал адрес переменной это что то с большим количеством букв и цифр.