4. Язык Си: УРА! ФУНКЦИИ!

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ธ.ค. 2024

ความคิดเห็น •

  • @axaxa6681
    @axaxa6681 2 ปีที่แล้ว +3

    Тоже кайфую от этой серии обучения. Супер!

  • @mishamishin5239
    @mishamishin5239 2 ปีที่แล้ว +2

    С большим интересом посмотрел, спасибо! Давай еще! )

  • @eugenevladoff2758
    @eugenevladoff2758 10 หลายเดือนก่อน

    Спаибо, добрый человек, что делитесь с нами своим опытом!

  • @Soul-2517
    @Soul-2517 ปีที่แล้ว

    здравствуйте! Отличные и интересные видеоролики. Успехов Вам в технической части и продвижении канала.

  • @qwaqa625
    @qwaqa625 2 ปีที่แล้ว

    Amazing lessons! Thx you teacher🙏

  • @mishamishin5239
    @mishamishin5239 2 ปีที่แล้ว +2

    А про ООП планируешь рассказать в таком же формате?

    • @webpomosh
      @webpomosh  2 ปีที่แล้ว +5

      дойдем и до ооп)

    • @mishamishin5239
      @mishamishin5239 2 ปีที่แล้ว +1

      @@webpomosh отлично!

  • @dima_kv
    @dima_kv ปีที่แล้ว

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

  • @aminyovlo1825
    @aminyovlo1825 4 หลายเดือนก่อน

    Под конец у меня читались только первые 3 символа имени, я смотрю и не у меня одного такая проблема, но я хочу своим наблюдением поделиться, если вместо sizeof(nickname) указать просто число, то проблемы не будет

  • @ZemAndrei
    @ZemAndrei 7 หลายเดือนก่อน

    нужно добавить в hello(nikname, sizeof(nikname)); в самой функции hello(char *nikname, int len_nikname) и естественно в функции sizeof(nikname) заменить на len_nikname.

  • @ivansnopov7054
    @ivansnopov7054 2 ปีที่แล้ว +2

    у меня, после разделения на функции, в hello(), при использовании указателя, имя обрезается до 3 символов, вне зависимости от того, сколько символов я даю на ввод
    в чем может быть проблема?

    • @username34
      @username34 2 ปีที่แล้ว

      У меня такая же проблема

    • @velovo2988
      @velovo2988 2 ปีที่แล้ว

      аналогично, проверял в онлайн компиляторах, там все нормально работает

    • @_elektr1k_v_kaske578
      @_elektr1k_v_kaske578 2 ปีที่แล้ว

      я такая же фигня

    • @velovo2988
      @velovo2988 ปีที่แล้ว +3

      Спустя месяц до меня наконец то дошло. В функции hello() мы вызываем функцию fgets() и как 2 аргумент указываем: sizeof(nickname), но в функцию как аргумент мы передали указатель на 1 элемент массива, то есть по факту этот sizeof() возвращает размер 1 элемента массива.
      Чтобы исправить это можно при вызова функции hello() указать второй аргумент как размерность массива: hello(nickname,10);. И при определении функции написать уже hello(char * nickname,int n). И дальше как второй аргумент фукнции fgets() указать sizeof(nickname) * n, то есть fgets(nickname, sizeof(nickname) * n, stdin). После этого все работает.

    • @mr.madness4968
      @mr.madness4968 ปีที่แล้ว

      Если ещё остались коды, можешь скинуть скрин, немного не понимаю что за n

  • @randomcreations1079
    @randomcreations1079 2 ปีที่แล้ว +1

    я только начал изучать программирование и начал как это ни странно свою 11 попытку я начал с ассемблера и языка С и мне вроде всё пока понятно. Но имхо на мой взгляд использовать массивы в качестве строк это извращение какое-то (хотя я при этом понимаю, что это ограничение языка)
    ps: забыл сказать, что это в остальных 10 попытках освоить программирование я до этого всегда пытался начать с С++. На 11 раз до меня наконец дошло, что вообще происходит в подобных языках низкоуровневых. В основном это конечно заслуга хороших менторов (в т.ч. таких как автор этих видеоуроков), ну и старых книг по программированию, вроде тех, где объясняется как работают процессоры Mos 6502 и intel 8080 ну и конечно же начала книги Петцольда - Код: тайный язык информатики. Имхо без знания основ информатики разобраться в этой абра-кадабре довольно сложно (лично мне)
    Автору канала выражаю Огромную благодарность за раздупление такого важного и интересного материала.

  • @ИванИванов-м4л6ц
    @ИванИванов-м4л6ц 10 หลายเดือนก่อน

    у меня почему то sizeof(nickname) по умолчанию принимает всего 4 байта, хотя nickname[8] но когда я убираю nickname[8] из int main и переношу её в int hello то всё работает исправно, как исправить?

  • @LLCUNIT
    @LLCUNIT ปีที่แล้ว +1

    когда в функции прописал nickname ник больше 3 символов почему то не выводит .

    • @StepusK
      @StepusK 2 หลายเดือนก่อน

      У меня также, с момента написания твоего коммента прошёл год, ты случаем не нашёл ошибку?)

  • @clide8414
    @clide8414 4 หลายเดือนก่อน

    Классно)

  • @username34
    @username34 2 ปีที่แล้ว

    Крутооо!!!