Объявление указателя. Разыменование * и взятие адреса &. Адресная арифметика. Имя массив как константный адрес. Курс молодого бойца по информатике (Язык Си). cs.mipt.ru/c_intro
Пікірлер: 226
@user-ho7go7sk1o5 жыл бұрын
Топовый препод
@evgeniygazetdinov16204 жыл бұрын
бог
@verbof25272 жыл бұрын
Действительно толково объясняет
@user-lx7nj3we6v Жыл бұрын
@@evgeniygazetdinov1620 это щ енот
@user-ch5dh5io9m4 жыл бұрын
я НИКОГДА, НИ-КО-ГДА не писал комментариев к видео, но тут, решил освежить некоторые вещи в памяти, как же жаль, что мне сразу так не объясняли, суть даже не в том, что я открыл для себя что-то новое, а просто с сожалением вспомнил процесс того, как я пару лет назад понимал это и как мне это объясняли. Приятно смотреть. Супер!
@nikolayshishkin629310 ай бұрын
И нашёл отличную видео-лекцию, когда в ней уже нет нужды😆
@Sentinel-14 жыл бұрын
Лучшее объяснение, что я видел. Всё по существу и без лишнего словоблудия.
@user-iy8fl6mo5j7 ай бұрын
Именно, я смотрел много видео и читал многое, но везде либо вскользь говорится или много воды, а тут четко с примерами все объяснили представил, закрепил, очень благодарен
@sergepisarsky2038 Жыл бұрын
Оказывается можно абстрактные вещи, которыми изобилует программирование, объяснять на понятном языке. Но такой стиль, к сожалению, встретишь не часто, совсем не часто. Я после первых лекций в универе по основам программирования испытал настоящий стресс, а от этой лекции - положительные эмоции, т.к. изложенный материал не оставил пробелов в понимании. Запомнить понятный материал куда как легче, чем материал с белыми пятнами в понимании. Респект профи
@nik21515 жыл бұрын
После буквы Ы объяснил то, что я не встречал ни в одном учебнике.
@user-dw5uh2ws5m5 жыл бұрын
Эх вот бы все преподы умели так доходчиво и интересно, с юмором объяснять....)
@kotnesobaka30805 жыл бұрын
Жалко нельзя поставить много лайков, Спасибо Тимофей за внятное и понятное объяснение!
@youtubeuser46843 жыл бұрын
Офигеть препод! Талант! Никакие курсы не нужны и универы
@art8fact1884 жыл бұрын
Спасибо Вам огромное, Тимофей! Только вы корректно объяснили суть положения звёздочки. Все остальные ставят как попало без объяснения и ломают всю логику. После этого видео перемещаю Вас на моё 1е место в рейтинге преподавателей программирования )))
@TheCxnine4 жыл бұрын
Звездочку ставят к переменной, а не к типу, потому что кокда указатель передается в определении функции fn( int *p )он там уже пишется без типа { *p = 10; }
@denisd77433 жыл бұрын
@@TheCxnine так вроде мужик сказал что похер где ставить звездочку если звездочка указывает на адресный тип
@ufi_ded3 жыл бұрын
+++, читал кучу учеников, не мог разобраться, первое видео на ютуб и так повезло, лучший препод
@blackmass49253 жыл бұрын
Вот это я понимаю: дистанционное образование. Преподавателю поклон.
@andreieliseev15164 жыл бұрын
Тимофей Хирьянов, спасибо вам за видеоуроки, не каждому дано так доходчиво рассказывать!
@fontes56972 жыл бұрын
Как же это прекрасно, самое толковое объяснение темы из тех что видел, СПАСИБО ВАМ ОГРОМНОЕ!
@juvusart5 жыл бұрын
Спасибо! Очень круто объяснили одну из самых сложных тем в си!
@oleholeynikov86594 жыл бұрын
ну просто хочется обнять таких людей, преподаватель с талантом)) очень емко, понятно и на простых примерах
@linkjeinson7705 жыл бұрын
Спасибо! Вы лучший препод в мире!)
@yuriilipaiev78113 жыл бұрын
Преподаватель вселенского масштаба)) Сложные вещи простым языком. Очень рад что нашел этот канал. Тимофей, спасибо Вам за труд!
@evgenykonovalov48704 жыл бұрын
Очень очень хорошая подача материала, чувствуется реальное понимание как преподнести информацию, преподаватель обладает хорошим багажом знаний. огромное уважение!!!!!
@7gennews Жыл бұрын
Все это знал, но даже тут вы смогли показать пару интересных вещей и еще лучше уложить все это в голове. Как всегда - видео лучшее на ютубе.
@psg5_prog3 жыл бұрын
Спасибо вам батюшка за прекрасную лекцию про указатели.
@user-fh8tg4wn4e3 жыл бұрын
Лучшее объяснение, Ваш канал просто находка , спасибо!!!
@imlaladede12902 жыл бұрын
Вы лучший преподаватель!!!!!!!! Спасибо огромное за такое прекрасное объяснение!!!!!!!!!!!!!
@reddalailama45943 жыл бұрын
Офигеть как всё подробно и наглядно... Я в шоке. Автор прекрасный учитель. Желаю как можно больше подписчиков
@Mani_Fast2 жыл бұрын
Каждая секунда бесценна, спасибо вам
@user-marrusia223 жыл бұрын
Как хорошо, что нашла ваш канал! Спасибо большое за видео, очень понятно:)
@aef1hfqdcxaqwxxqsxqgvbnr7973 жыл бұрын
как раз из-за указателей вылетел в свое время из универа. Си++ был на первом курсе а асм уже на втором. Спасибо за понятно изложенный материал!
@McGewen4 жыл бұрын
даже просмотревь половину видео все очень прояснилось, вот это дядька, уважуха тебе! посмотрев до окнца - протсо апплодирую стоя!
@bookuha3 жыл бұрын
Вы лучший! Сижу тут, нервно хихикаю, от того, что наконец-то осознал
@alexandrponomarenko41273 жыл бұрын
23:32 - эта САМОЕ важное и простое объяснение, почему первый элемент всегда имеет индекс 0! Никто никогда мне не мог этого нормально объяснить, а тут... просто браво!!!
@Blendershick4 жыл бұрын
Спасибо огромное! Лучшее объяснение)
@user-yo6no3jk9l3 жыл бұрын
То неловкое чувство, когда тебе 40, а ты смотришь курс для школьников. Эх, в наше время таких преподов не было...
@tishafeed80853 жыл бұрын
никогда не поздно учиться
@AspireM34004 жыл бұрын
Замечательный видеоурок, все понятно и по полочкам разжевано. С такой подаче наверно и динамические массивы будут по зубам любому тугодуму )))
@mov_r16_r174 жыл бұрын
Хорошее объяснение. Понравилось, что Тимофей подчеркнул, что * в объявлении - это не операция разыменования (мне больше нравится термин "ссылка по указателю"), а модификатор типа. Поэтому я предпочитаю объявления типа int* ip, вместо int *ip.
@user-fh2jq5ho2v4 жыл бұрын
Блистательно объясняет!
@archiechellaut94832 жыл бұрын
Большое спасибо вам за полезное видео, Тимофей!
@user-gs6lb5mm9w4 жыл бұрын
огромное спасибо за видео. Было много непонятного до вашего объяснения.
@deitven9631 Жыл бұрын
Огромное спасибо за качественный контент!
@robertnewman88244 ай бұрын
Браво ! Лучшее объяснение !
@Minas__Morgul3 жыл бұрын
Спасибо вам за ваши уроки!!!
@rmgear68453 жыл бұрын
Уважаю за доходчивость объяснения
@user-ke5oz4uy3b11 ай бұрын
Очень важный урок для меня. Спасибо вам
@user-fo1ro2cn6v5 жыл бұрын
Только внимательный зритель сможет увидеть под рубашкой застегнутой под последнюю пуговицу и повышенной тональностью голоса(что дает ложное представление "типичного программиста"), хорошую осанку и четко поставленную дикцию. Спасибо Вам за этот урок, многие вещи прояснились!
@Video-zo5oe5 жыл бұрын
Что значит "типичный программист"? Что все к нам прикопались, зависть берет, шаблоны ваши рвем? Завидно, да, ненавидели нас пока бухали и смотрели телевизор вместо учебы, а теперь зло берет, что нам служить приходится? Как насчёт типичного экономиста что работает таксистом, как насчёт типичного юриста что работает охранником?
@ufi_ded3 жыл бұрын
Шутку про пять звёздочек заценили) Спасибо за понятное объяснение!
@Mitaleko4 ай бұрын
Как здорово, очень понятно и по существу
@maxframe44153 жыл бұрын
Мои глаза открылись... 😮. Спасибо!
@user-yi2ng1em8x2 жыл бұрын
Шикарно. Блестящее объяснение
@Gena-ku7if4 жыл бұрын
Лучшее объяснение, реально....
@cat_amanita4 жыл бұрын
Я в восторге от этого видоса :)
@Divon895 жыл бұрын
Отлично и внятно рассказал!
@user-yh2xz1qm5m3 жыл бұрын
Лучший, спасибо за лекцию
@ukrainianeye25453 жыл бұрын
Супер! ОГРОМНОЕ СПАСИБО!
@catastrophic37096 ай бұрын
Тимофей, Вы просто лучший!
@epheymind84752 жыл бұрын
Благодарю! отличное объяснение
@VasilyMT2 жыл бұрын
Отличное лаконичное объяснение.
@arturssitdikovs44805 жыл бұрын
Очень понятно. Спасибо!!!
@christferna2 жыл бұрын
Спасибо за лекцию!
@user-yo6no3jk9l3 жыл бұрын
Я бы посоветовал Тимофею попреподавать ассемблер на микроконтроллерах AVR. Они очень простые в изучении, там все эти адреса можно прописывать вручную и очень хорошо разобраться.
@IgorAlov Жыл бұрын
На самом деле, все очень круто, но указатель, правильнее будет использовать тип void *, потому что размер ячейки под адрес в памяти будет равен, по сути разрядности процессора. Int * частный случай, который говорит о том, на какой тип данных представлен по конкретному адресу в памяти. В данном случае у вас int, но там может быть например char или вообще структура.
@sergeypyatkovskiy18085 жыл бұрын
Отличное видео
@ammonjerro396 Жыл бұрын
Хорошее объяснение. Я даже понял как работает. Вопрос - а зачем нужны все эти ссылки и указатели и почему напрямую не обратиться к переменной?
@SunSay3 жыл бұрын
В Адресном языке программирования (1955г.) можно было ставить n звёздочек перед указателем и это имело очень большой смысл ("штрих-операция"). "Штрих-операция" (разыменование указателя) была апаратно реализована на ЭВМ "Киев" в 1955г.
@user-ub7cq8xk6h3 жыл бұрын
Огромное спасибо за видео
@nimgvae3 жыл бұрын
Шикарная подача.
@user-sr9nq9ei3l4 жыл бұрын
Вообще мощно . Адреса это бомба
@artemmelnikov76462 жыл бұрын
Очень понятно, спасибо большое
@Video-zo5oe5 жыл бұрын
Хороший урок спасибо
@UFO264 жыл бұрын
«Любимая, я тебя поведу к самому краю Вселенной! Я подарю тебе эту звезду, светом нетленным будет она озарять нам путь в бесконечность…»*
@hannahr50374 жыл бұрын
Тимофей, Спасибо!
@Vovchirshtain Жыл бұрын
Просто лучший 👍💯
@vitalic853 Жыл бұрын
Однозначно лайк, спасибо
@idi_poesh3 жыл бұрын
всё очень понятно, спасибо
@Krotonyasha Жыл бұрын
Топовое объяснение!
@user-bs1ck6sc3s Жыл бұрын
Спасибо! Супер!
@user-lt5xs9iy6i2 жыл бұрын
Ого, круто, можно делать переменные с адресами переменных который сами лежат на каком то адресе и его тоже можно записать в переменную. А можно вопрос? Зачем это надо и где используется. Чувствуешь себя как на уроке, когда час объясняли что-то сложное, а зачем оно нужно так и не сказали
@alexswipe45904 жыл бұрын
Здравствуйте, Тимофей! Подскажите пожалуйста по поводу указателей и строковых литералов. Почему при выполнении следующей программы: int main(int argc, char** argv) { char str[30] = "Hello"; char *p; p = str; cout
@petrpetr95764 жыл бұрын
Потому что так работает cout. Когда ему передается указатель на char то он печатает строку. Что бы увидеть адрес - пиши cout
@beehummingbird4744 Жыл бұрын
Запихал его туда . топовый преподаватель . 😁😁😁 .
@dead_inside_ggyaafk4 жыл бұрын
Спасибо
@ViktorRy22 жыл бұрын
На 21:10 в выражении A[i] = *(A + i) какого типа должна быть переменная i? Если она типа char/short/int, то в правой части выражения перед сложением будет осуществлено её приведение до типа int*?
@alltheworldsastage.116883 жыл бұрын
Спасибо 🙏
@wizard_still4 жыл бұрын
действительно понятно, еще бы про флаги такое найти
@jimshtepa54232 жыл бұрын
в 20:20 производится разыменование А, получается разыменование можно выполнить не только указателя, но и массива или переменных любого типа, даже примитвов?
@Ma_X644 жыл бұрын
Прикольно было бы разложить по элементам массива их собственные адреса.
@1nfoGames3 жыл бұрын
Ваааа, класс, наконец я понял
@user-gl2ll5mk7s4 жыл бұрын
ты мега крут )))
@sergeykorobkov90803 жыл бұрын
очень доходчиво,
@forsink72896 ай бұрын
Спасибо большое
@user-vw6rf7op6x5 жыл бұрын
Спасибо большое за уроки, объясняете всё очень доходчиво. Только не совсем понятен смысл употребление указателей. В данном примере, можно было без и указателя присвоить переменной значение
@user-bj6kn4yo6k4 жыл бұрын
Миха Сёмин используются при передачи параметров в функцию по указателю, при выделении динамической памяти (с помощью библиотечных функций malloc и т.д) например для создания динамического массива, при разработке прочих динамических структур данных (списки, деревья и прочие), при создании массивов указателей на функции и т.д.
@dmitrycaiman59522 ай бұрын
Спасибо!
@Video-zo5oe5 жыл бұрын
Распечатаю 🙂
@andreyk.76574 жыл бұрын
Спасибо.
@billlanc946111 ай бұрын
Идеальное пояснение
@EdenLollys Жыл бұрын
спасибо большое
@Alexcei64rus4 жыл бұрын
Кто из 21?
@dmarsell4 жыл бұрын
)))
@segameserver4 жыл бұрын
Согласен, тема тяжелая.))
@blackmass49253 жыл бұрын
Alexcei64rus Из 2021-го года?
@Alexcei64rus3 жыл бұрын
@@blackmass4925 школы 21
@user-dh4zm7tq1y3 жыл бұрын
ну мне 21, так что я тоже в каком-то смысле из 21
@syrengoogle Жыл бұрын
просто топ!
@rnd32053 жыл бұрын
Класс!!!
@evgenykonovalov48704 жыл бұрын
как еще 1н лайк поставить просто топ видео
@user-yj9he7eh3l4 жыл бұрын
в натуре чётко
@DodgerEcho Жыл бұрын
У меня один вопрос, зачем это надо, там где две звёздочки, три, ведь можно сделать простым способом например через присвоение переменной i другого значения, ну или хотя бы через *pi = ... Зачем остальные сложности?
@leoworker17523 жыл бұрын
Красава, спасямба бро! Все по полочкам, теперь вкурил про эти указатели. А как например обратиться к адресу путем сложения?? Ну допустим int адрес 0x1200, тогда у следующего элемента будет 0х1204 и так далее, то есть прибавляем по 4 байта. Я хочу обратиться к 20 элементу массива путем сложения, то есть 0x1200 + 4 * 20; Как вывести это?
@Video-zo5oe5 жыл бұрын
Переменная что хранит адрес переменной которая сама хранится по какому-то адресу
@rattingmage94754 жыл бұрын
Переменная равносильна адресу, указывающему на ячейку в памяти.
@user-dr9nd1dm7h2 жыл бұрын
Все хорошо, только не понятно зачем это в итоге нужно, я про указатели. Если у нас есть переменная зачем нам обращаться к ней не по ее имени, а по адресу. Хотелось бы понять для чего это делается и какие преимущества это дает.