Язык Си с нуля - Урок 25 - Динамические массивы, адресация памяти.

Поділитися
Вставка
  • Опубліковано 26 кві 2020
  • Это видео для тех, кто еще ни разу не программировал, но прошел предыдущие 24 урока.
    В данном уроке мы изучим:
    + динамические массы (одномерные)
    + адресную арифметику и адресацию в памяти.
    ► Плей лист - • Программирование на Си...
    Уроки по теме:
    ► Вывод на экран - • Программирование на Си...
    ► Массивы и циклы - • Программирование на Си...
    ► Указатели - • Язык Си с нуля - Урок ...
    ► Динамическое распределение памяти - • Язык Си с нуля - Урок ...
    Язык Си с нуля - данный видеокурс предназначен для тех, кто еще ни разу не программировал. Здесь я максимально понятно пошагово объясняю основы программирования на языке Си. Если хотите научиться программировать на языке Си - пройдите весь курс. Помимо объяснения материала я даю домашку. А после каждых нескольких уроков мы вместе пишем забавные игры!)
    Безвозмездная помощь каналу:
    VTB - 5368 2900 3162 0349 Антон.
    BTC - bc1q72jw5p572ck24wh7kev5cnqvv4wwufc8q2zy9l
    / beginend

КОМЕНТАРІ • 57

  • @satsuk1neo
    @satsuk1neo 7 місяців тому +4

    чел за 6 минут обоятельно и доходчиво объяснил мне то, что не смог препод за 3 месяца...СПАСИБО ОГРОМНОЕ!!

  • @k777ig
    @k777ig 4 роки тому +60

    А мне наоборот звук клавы очень даже в тему, помогает так сказать погрузится в атмосферу. Чисто мое мнение, человек который любит компьютеры и программирование ,шум рабочего инструмента раздражать не должен). Огромное спасибо за супер контент)

    • @beginend95
      @beginend95  4 роки тому +2

      Благодарю за поддержку!)

    • @user-fv8uv2us9r
      @user-fv8uv2us9r Рік тому +2

      А для меня это асмр :D

  • @user-he4xd4eg4n
    @user-he4xd4eg4n 3 роки тому +6

    Черт. Почему я вас раньше не нашел? Емко и информативно. Такое нынче редко встретишь на ютубе.

  • @user-ic2wx3qw1w
    @user-ic2wx3qw1w 4 роки тому +22

    Ну кто может возразить тому что это не круто?
    Голос веселый, как и сам Антон - есть!
    Уроки понятные максимально просто, даже для новичков - есть!
    Предостережения(проблемы, которые могут возникнуть) - есть!
    ДЗ(правда мне кажется что они слишком простые) - есть!
    Музыка, которая тебя заставляет смотреть все видео - есть!
    Комментарий для поддержки канала - есть!

    • @vasyapupkin69cyber
      @vasyapupkin69cyber Рік тому

      не круто, потому что вместо программирования нужно идти на СВО! ХОХЛЫ наступают!!!!!!111!

  • @theomur_
    @theomur_ Рік тому +4

    Боже это просто прекрасно. Я смотрю на это уже 5 часов

  • @user-lr4vj1ye7d
    @user-lr4vj1ye7d 3 роки тому +7

    Так изящно и красиво. Спасибо большое за видео

  • @user-tf5pk8lh2f
    @user-tf5pk8lh2f 4 роки тому +14

    Класс!!!. Хоть и знаю язык, но было познавательно. Как раз почти во всех других уроках, не хватает технической стороны работы языка. В ваших, очень понравилось, доступно объяснено именно детали устройства языка. Хотя можно ещё подробнее. Для начинающих это как раз является важной частью. Синтаксис выучить просто и по справочнику. Но чтобы идти в рост к более профессиональному программированию, нужно, знать детали. Когда изучал ООП, долго не мог понять для чего это нужно. Писал классы, но в целом писал теже процедуры. Когда узнал, как работают классы, подменяются поля классов, как делается таблица виртуальных методов и т.д, резко осознал силу ООП. Легко разобрался с шаблонами программирования, хотя до этого, они совсем не давались. Хоть сам програмирую давно, смотрю с интересом. Надеюсь в дальнейшем продолжите в том же духе.

    • @beginend95
      @beginend95  4 роки тому +1

      Огромное спасибо за развернутый коммент! Стараюсь объяснять максимально подробно)

  • @cultgringel6334
    @cultgringel6334 2 роки тому +1

    Блин, наконец-то я выкупил за динамические массивы. Вообще указатели и вот это всё мне сложно даётся. Спасибо преподавателю.)))

  • @Ruslan_Sirota
    @Ruslan_Sirota Рік тому +1

    Антон спасибо.
    Очень доступное и толковое объяснение новой темы.
    Домашнее задание - у меня получилось, функции : malloc and realloc работают.

  • @Malinovskyable
    @Malinovskyable 4 роки тому +3

    Очень круто! Спасибо огромное наконец-то понял как они работают. Отличные видосы побольше бы таких! Очень странно, что так мало просмотров. Большая часть видео по си скучные, неинтересные и непонятные. А здесь понятно и наглядно.

  • @user-zz1el8yi5z
    @user-zz1el8yi5z 2 роки тому +2

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

  • @4etk170
    @4etk170 Рік тому

    Гений, лучшая подача материала

  • @yuraa.4980
    @yuraa.4980 2 роки тому

    Это очень круто! Как мне динамических массивов не хватало))

  • @user-ws8lx5ji8z
    @user-ws8lx5ji8z 4 роки тому +2

    Первый раз реклама Ютюба была полезной для меня.

    • @user-ic2wx3qw1w
      @user-ic2wx3qw1w 4 роки тому

      Хахахах, согласен! Я тоже по рекламе пришел из 29-го урока.

  • @user-rl3rc6qq6y
    @user-rl3rc6qq6y 2 роки тому

    Отлично!

  • @romkagm7756
    @romkagm7756 3 роки тому +6

    00:02 - судя по всему)). Рассмешил)

  • @user-ne4bd3ry1n
    @user-ne4bd3ry1n 3 роки тому +4

    "И судя по всему мы продолжаем изучать Си"

  • @user-dh2gs1wj1h
    @user-dh2gs1wj1h 3 роки тому +7

    Действительно почему так мало подписчиков... у этого долгодума с simple code 180k, а тут такой годный контент и даже 3к нет

    • @beginend95
      @beginend95  3 роки тому +2

      Я пока не очень разобрался в рекламе) Видимо что-то не так делаю)

    • @kadencode5347
      @kadencode5347 2 роки тому +2

      А почему такая ненависть к Simple Code? Он заснял плейлист на 200+ видео по C++. В свою очередь, что сделали вы? М?

    • @yrikitishnik1680
      @yrikitishnik1680 2 роки тому

      что то против simple code имеешь?

    • @yrikitishnik1680
      @yrikitishnik1680 2 роки тому +1

      симплкод Антоха и cppprosto одни из крутых каналов по программированию

  • @shohzodzet
    @shohzodzet 3 роки тому +1

    Преподаватель, которого не заслуживает наш город, но в котором он нуждается.

  • @teabreaky
    @teabreaky 2 роки тому +1

    Спасибо большое! Очень помогло разобраться

  • @kuzma6225
    @kuzma6225 3 роки тому

    Привет, у меня че-то пропал логбар в код блоксе. Команда f2 не помогает и в аункте view тоже не включаеься. Что делать?

  • @fahrenheit1863
    @fahrenheit1863 Місяць тому

    Какой будет массив(динамический или статический) если
    1. создать переменную n,
    2. с помощью функции scanf прочитать число в переменную.
    3. объявить массив arr[n][n].
    Ведь значение мы получаем уже после запуска программы, программа не знала какого размера будет массив до того пока мы не введем число?
    Откуда память?

  • @Русь-Родина
    @Русь-Родина 3 роки тому

    Язык языков программирования когда выйдет? ))

  • @Inconspicuous_264
    @Inconspicuous_264 3 роки тому +1

    Ссылка на динамическое распределение памяти неверная. Там ссылка на массивы и циклы

    • @beginend95
      @beginend95  3 роки тому

      Благодарю!) поправил.

  • @twospikes7387
    @twospikes7387 2 роки тому +2

    моя жизнь действительно не будет прежней

  • @mr_stalker8623
    @mr_stalker8623 3 роки тому +1

    char* a1 = "Hello"; //text,read only
    char a2[ ] = "Hello"; // data,write,read
    тобишь они не одинаковы!
    при работе с большими проектами больше всего что то пойдет не так

    • @beginend95
      @beginend95  3 роки тому

      В первом случае ты не выделил память, а присвоил адрес литерала. По этому массив доступен только для чтения.
      Подробности в уроке - ua-cam.com/video/cvvIJ0FbiPM/v-deo.html

  • @muhammadiqbol1758
    @muhammadiqbol1758 3 роки тому

    int cnt=4;
    int cNt=2;
    mas= malloc(sizeof(int)*cnt);
    mas=realloc(mas,(sizeof(int)*cNt));
    Что произойдет, если наше realloc будет меньше, чем malloc?

    • @beginend95
      @beginend95  3 роки тому

      ничего страшного) просто размер массива уменьшится.

    • @Русь-Родина
      @Русь-Родина 3 роки тому

      Больно читать такой код. Ужас какой-то.

  • @ostrov11
    @ostrov11 4 роки тому +3

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

    • @beginend95
      @beginend95  4 роки тому +1

      Благодарю за отзыв! неужели после паралонки ничего не изменилось?)
      Буду по возможности стараться раскрывать "проблемы", но не хочу перегружать уроки. Основная моя цель - дать материал максимально доступно.
      После нескольких уроков я обычно делаю кукую-нить простую игру, где применяю весь пройденный материал. Там мы и "решаем проблемы")

    • @ostrov11
      @ostrov11 4 роки тому

      @@beginend95 ну хз может у тя какой эквалайзер включен при сведении прослушивании, низкочастотные удары передаются на микрофон от нажатий, не звук нажатия а вибрация удара через стол на стоику и микрофон, хотя может эт только мне эт кажется)) забей

    • @BrownAleks
      @BrownAleks 4 роки тому +4

      @@ostrov11 это удары молоточка, которым Антоха вколачивает нам священные знания древнего племени программистов. Сначало придётся потерпеть, потом станет приятно. =)

    • @beginend95
      @beginend95  4 роки тому

      В следующем видео уберу басы при печати через эквалайзер) ща разобрался как это делается)

    • @BrownAleks
      @BrownAleks 4 роки тому +1

      @@ostrov11 Всё что вам сейчас обьясняют - это всего лишь алфавит. Значение и применение которого трудно переоценить. Если проводить паралели с изучением литературы. Оперировать с память - это один из самых важных навыков в програмировании. На этом этапе если не понять что такое ссылка и указатель, дальше можно не учиться.

  • @oleksandr5700
    @oleksandr5700 3 роки тому

    привет друг,немогу вивести каждое число больше на 2 раза ,как ето сделать ?
    int*mac=NULL;
    int a =10;
    int i;
    mac = (int*)malloc(a*sizeof(int));
    if(mac==NULL)
    {
    printf("Erorr");
    }
    for(i=0;i

    • @beginend95
      @beginend95  3 роки тому

      Не очень понял, что ты хочешь сделать

  • @nokia_n-gage
    @nokia_n-gage Рік тому

    Комментарий

  • @yrikitishnik1680
    @yrikitishnik1680 2 роки тому

    комментарий

  • @user-zz1el8yi5z
    @user-zz1el8yi5z 2 роки тому +1

    Получилось как-то так:
    #include
    #include
    #include
    int main()
    {
    int cnt = 10;
    int *mas = NULL;
    mas = malloc (sizeof(int) * cnt);
    for (int i=0; i

    • @klizzmochka
      @klizzmochka 2 роки тому

      Виталина, библиотека math.h тут не нужна. Второй цикл(там где ты выполняла 2 задание) нужно было начинать с i=11 т.к. в задании сказано заполнить новые ячейки. Так в целом молодец! Не плохо умеешь кодить.(В каком заведении учишься если не секрет?)

    • @user-zz1el8yi5z
      @user-zz1el8yi5z 2 роки тому

      @@klizzmochka спасибо!)) учусь в бгуир

  • @klizzmochka
    @klizzmochka 2 роки тому

    Д/З(в качестве оценки жду новый ролик )
    #include
    #include
    int main()
    {
    int cnt = 10;
    int *mas = NULL;
    mas = malloc(sizeof(int) * cnt);
    for (int i = 0; i < cnt; i++)
    {
    mas[i] = 2;
    }
    for (int i =0;i