Конкатенация строк что это. Объединение строк.Тип данных string c++ что это. Урок #64

Поділитися
Вставка
  • Опубліковано 22 лис 2024

КОМЕНТАРІ • 152

  • @НиколайПокровский-р6в
    @НиколайПокровский-р6в 7 років тому +249

    Спасибо за уроки, пожалуйста, не останавливайся и продолжай в том же духе. За неделю по твоим курсам узнал куда больше, чем за год в ВУЗе

    • @SimpleCodeIT
      @SimpleCodeIT  7 років тому +33

      Пожалуйста, благодарю за поддержку =)

    • @arkanruler1593
      @arkanruler1593 6 років тому +2

      +

    • @arkanruler1593
      @arkanruler1593 6 років тому +6

      @Zhantore Yesen согласен, в вузе и близко такого не дают

    • @sheldon3705
      @sheldon3705 5 років тому +11

      Тогда зачем платить деньги в ВУЗ? За что берут деньги? За корочку бесполезную?

    • @ДенисКвантум
      @ДенисКвантум 4 роки тому +12

      За неделю до 64 урока? Рили :D ?
      Я ровно месяц шел до этого урока..... Да, параллельно я конечно работаю, и не всегда каждый день получается позаниматься.....
      А в целом согласен, в колледже помню учили год то что тут выложено в 82 уроках (все что ДО ООП)....
      Итог для себя : вместо года мучений, 1.5 мес учения которая реально интересно, да, не все и не всегда понятно, придется пробегаться по 2 кругу выборочно, но все же если вспоминаю колледж там где понятно было %10 - 20 от силы от чего наверное и стало не интересно в целом...... То тут понятно для меня самого %70-80 и за это огромное спасибо Сергею!

  • @solomonchannel3573
    @solomonchannel3573 6 років тому +37

    Отличная книга. Первая книга этого автора которую я прочел. "Черновик" и "Чистовик" тоже произвели впечатление. Еще раз спасибо за уроки.

    • @SimpleCodeIT
      @SimpleCodeIT  6 років тому +15

      Пожалуйста! Книги хороши =)

  • @PROFESSAR505
    @PROFESSAR505 Рік тому +91

    В visual studio 2022 strcat является небезопасной функцией потому код не скомпилируется, вместо нее компилятор предлагает strcat__s, но по сути это одно и тоже, т.е. все работает в штатном режиме

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

      А ты хорошь спс

    • @chmowashe2221
      @chmowashe2221 Рік тому +5

      мега хорош

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

      Спасибо !

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

      Можно просто прописать в начале дефайн на взятие безопасности на себя

  • @elizavetalipen5466
    @elizavetalipen5466 3 роки тому +17

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

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

      и в кайф заниматься этим)

  • @SimpleCodeIT
    @SimpleCodeIT  7 років тому +18

    #string #конкатенация #SimpleCode #урокипрограммирования

  • @ЕвгенийДьячков-о5в
    @ЕвгенийДьячков-о5в 6 років тому +78

    77 урок в плейлисте, а мне еще как минимум 80 раз "спасибо" писать, ладно спасибо:)

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

    Большое спасибо вам за урок и прекрасное пояснение, Сергей!

  • @Alex_Suvorov
    @Alex_Suvorov 9 місяців тому +1

    спасибо огромное, последние урока, мне кажется, хорошая подводка к ООП, в том плане, что всё чаще проявляется это понятие, у меня некий страх перед ним, потому что до сих пор не смог разобраться и понять, и даже притрагиваться было страшно, теперь это уходит

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

    А строки оказываются интересные. Даже получил удовольствие

  • @valentinashevy8670
    @valentinashevy8670 Рік тому +6

    Если в вашей версии Visual Studio функция strcat не работает,
    используйте strcat_s - тоже самое

  • @nosferatu2799
    @nosferatu2799 5 років тому +39

    Никак не пойму: ну, какие уроды ставят дизы? Неужели автор что-то делает не так до такой степени, чтобы ставит диз? Да нету на всём UA-cam лучшего канала, чем этот по C++, на сегодня. Искали, знаем

    • @michaelmichael8602
      @michaelmichael8602 4 роки тому +6

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

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

    Охохо, Мартин Игоревич Дугин, это же из Спектра, Лукьяненко! Лайк, огромный ЛАЙК!

  • @ТехникРальф-х7т
    @ТехникРальф-х7т 5 років тому +1

    Спасибо за уроки, пожалуйста, не останавливайся и продолжай в том же духе. За неделю по твоим курсам узнал много нового.

  • @ИоаннДейкун
    @ИоаннДейкун Рік тому +1

    привет из 2023. Спасибо большое за уроки!"

  • @ВладиславШестаков-щ1ш

    За две недели узнал больше, чем за всю жизнь

  • @ВладиславФедун
    @ВладиславФедун 6 років тому +3

    спасибо, Ваши труды!

  • @Ermine882
    @Ermine882 7 років тому +8

    Спасибо за урок

  • @Firuz26
    @Firuz26 7 років тому +13

    Спасибо

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

    Слово const при объявлении строки нужно потому, что компилятор при обращении к имени строки обращается не к адресу ячейки памяти, в которой находится первый символ, а к самому содержимому строки. При этом наличие нуля-терминатора нужно чтобы автоматически определять конец строки при таком обращении. То есть имя строки работает, как ссылка на содержимое строки. А ссылка - это, как мы помним, аналог константного указателя.

  • @АуеШпак
    @АуеШпак 4 роки тому +7

    У кого проблема что не работает strcat, используйте strcat_s Это проблема вызвана из за дефолтных настроек проекта, VS пишет "(тут вроде функция написана, или что то другое) или переменная может быть не безопасна, используете strcat_s"

  • @ОлегСизов-ф4б
    @ОлегСизов-ф4б 3 місяці тому +1

    Если у кого-то выводит ошибку, что strcat (или strcat_s) не определено - подключите , и все заработает

  • @АлексейГуськов-и5б
    @АлексейГуськов-и5б 7 років тому +58

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

    • @SimpleCodeIT
      @SimpleCodeIT  7 років тому +58

      Пожалуйста. Полноценные приложения будут, но только после того как запишу все запланированные курсы для новичков.

    • @yastepan
      @yastepan 9 місяців тому

      ​@@SimpleCodeITгдеееее

    • @Alndr
      @Alndr 9 місяців тому

      когда-нибудь))@@yastepan

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

      Жду... ​@@SimpleCodeIT

    • @АнтонБелоконь-т4ю
      @АнтонБелоконь-т4ю Місяць тому

      @@Orange_999 у него есть создание приложения на джава

  • @АнастасияКороткова-ь9к

    Спасибо за качественную обучашку :) порадовало отсутствие слов-паразитов))

  • @aviorwhosits
    @aviorwhosits 5 років тому +5

    Спасибо за ваш труд! Ах да, и еще, Сергей Лукьяненко прекрасный писатель, Вы, Сергей Журавлев прекрасный программист. В чем следующий Сергей будет прекрасен?

  • @ДенисКвантум
    @ДенисКвантум 4 роки тому

    Как только увидел название темы, нажал паузу и пошел сам вспоминать ее (читал пару недель назад в другом источнике(книга))
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    setlocale(LC_ALL, "Ru");
    string slovo1 = "Hello";
    string slovo2 = "Jon";
    string rezult = slovo1 + slovo2;
    cout

  • @chelovechek7773
    @chelovechek7773 6 місяців тому

    спасибо !

  • @АлександрЛитвинюк-х2ы

    Спасибо за знания !

  • @mr.warpunch6007
    @mr.warpunch6007 2 роки тому

    Супер, спасибо за урок!

  • @lennoxmacduff2037
    @lennoxmacduff2037 6 років тому +2

    Лайк за уроки и раннего Лукьяненко

  • @SeshAlex
    @SeshAlex 6 років тому +1

    Спасибо за урок!

  • @ДаниилНепелев-н4х
    @ДаниилНепелев-н4х 2 роки тому

    Самое крутое, что есть в С++ это cin >> ; Даёт возможность по эксперементировать и поиграться )

  • @gasplyak8405
    @gasplyak8405 6 років тому +3

    Огромное спасибо! :)

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

    *Л. а. й. к. о. с.* за видос.

  • @Непрофессионалымы

    точно не помню причину, но в микроконтроллерах рекомендуется юзать += типа меньше жрет ресурсов

  • @VVpepper8686
    @VVpepper8686 6 років тому

    Сто лет назад читал эту книгу, но все-таки вспомнил. Имя Мартин видимо запомнилось.

  • @СергейПанин-и4у
    @СергейПанин-и4у 7 років тому +4

    Большое спасибо за ваш труд, скажите пожалуйста, сможете ли вы как нибудь выложить видео в котором покажите как писать полноценное приложение, без разницы что оно будет делать. Просто курсов по основам программирования очень много, а чего то подобного не встречал, даже пример без объяснений будет очень полезен, заранее благодарю) C++ учим в колледже, но смотря ваши видео вижу, что многое не объяснили.

  • @СтарыйВаленок-к4л
    @СтарыйВаленок-к4л 4 роки тому +1

    Хорошие занятия. Подписался на вас и вк.

  • @indeec9538
    @indeec9538 4 роки тому +37

    а vs 2019 просит писать strcat_s

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

      @Кирилл Берзиньш у меня без s выводил варнинг)

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

      пишет : function strcat is unsafe

    • @АлександрПопов-ф8т
      @АлександрПопов-ф8т 3 роки тому

      Больше котиков! Ес, май инглиш вери вэл

  • @АртурГребешков-к6ж
    @АртурГребешков-к6ж 6 років тому +1

    Спасибо!

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

    спасибо очень помогло

  • @Лев-й7я
    @Лев-й7я 5 місяців тому +1

    👍👍✌️👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍

  • @Dendrarium.walker
    @Dendrarium.walker 3 дні тому

    Подскажите, какая функция нужна для конкатенации в Qt creator? strcat нет

  • @AsonGor
    @AsonGor 5 років тому

    СПЕКТР. Какой же Лукьяненко был крутой пока не скатился. Я не побось этого слова гениальный писатель был. Проводник отсюда...вы Сергей. Если читали понимаете что это значит.

  • @ИгорьК-ю1п
    @ИгорьК-ю1п 4 роки тому

    спасибо, очень помогло!

  • @safocl9768
    @safocl9768 6 років тому +2

    вухахах вот тут не соглашусь, вухахахаха
    натоящие си-гуру делают конкатенацию строк путем выделения памяти через malloc с необходимым размером. Затем с помощью memcpy копируют область памяти первого массива чаров (ессесна без \0) в область, выделенную malloc, и после копят ту да же область из второго массива с отступом по размеру скопированной памяти из первого массива, уже с \0...
    случилось недавно как раз в обучательных целях сочинять конкатенацию строк в СИ и мне лютые гуру с лора посоветовали именно данный способ, как наименее затратный по ресам, вместо strcat()

    • @АндрейЕремеев-п8ь
      @АндрейЕремеев-п8ь 5 років тому

      Тут не гуру обучают а ламеров)). Научимся потом и так, как ты сказал. Интересно, по любому, узнать различные варианты. Спасибо.

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

  • @ДанилаИванов-о3у
    @ДанилаИванов-о3у 5 років тому +7

    Дугин))))))

  • @ЛевПрав-л3у
    @ЛевПрав-л3у 4 роки тому

    Лайк за Дугина, мартин алексеевич.

  • @sealkeen
    @sealkeen 6 років тому

    Ну, С++ - это больше бэк-эндовый язык, вроде как, так что то, что придётся заниматься фронт-ендом и работать с пользователем, - не гарантированно. Однако, строки играют огромную роль, несомненно. Тут без каких-либо нареканий.

  • @pavelios3577
    @pavelios3577 5 років тому +3

    Сергей, спасибо за уроки! Но почему-то не определяется в VS 17 string? Всё подключено, начинает определятся только после добавления std::string и тогда начинает всё работать. Может кто знает в чём дело?
    #include
    #include
    #include //
    using namespace std;
    int main()
    {
    SetConsoleCP(1251);// Руссификация
    SetConsoleOutputCP(1251);
    cout

  • @Inhuno
    @Inhuno Рік тому +3

    5:10 ошибка:
    Ошибка C4996 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
    Что делать если такую ошибку выдаёт

    • @kveettveek
      @kveettveek Рік тому +2

      в VS 2022 надо писать strcat_s,

    • @3773artem
      @3773artem Рік тому

      @@kveettveek спасибо, помогло!

  • @НеИзвестныйпользователь-б3л

    Конкатенация строк похож на JavaScript через плюсика +

  • @vladsmirnov6126
    @vladsmirnov6126 2 дні тому

    В Visual Code нет функции strcat b strcat_s. Как быть?

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

    в новой версии не strcat, а strcat_s, не помню точно, что означает эта _s, почитайте, если интересно, вроде можно какую-то манипуляцию сделать и s писать не нужно

  • @batlord5031
    @batlord5031 6 років тому

    8:41 - string.

  • @ВиталийРаца-ч2щ
    @ВиталийРаца-ч2щ 4 роки тому

    Да, просто читайте выплывшее описание ошибки. Теперь просит писать функцию как strcat_s.

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

    в VS 2022 надо писать strcat_s, если у кого то ругается на strcat

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

    Is C method works faster than C++ method?

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

    У меня компилятор ругается, требует функцию strcat_s вместо strcat. Что за фигня? Даже не компилирует без _s

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

    Как вернуть строку из функции?

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

    Интересно, что string без проблем конкатенирует сишные массивы char, если оно кому нибудь надо конечно.

  • @Radix-z7n
    @Radix-z7n 7 років тому +3

    Нужна ли физика для программирования?

    • @SimpleCodeIT
      @SimpleCodeIT  7 років тому +6

      Смотря в какой сфера программировать. Если хочешь писать ПО для спутников, всяких там автопилотов, то да. Но в других сферах вообще не нужна.

    • @jangiryanarsen4952
      @jangiryanarsen4952 7 років тому +5

      Да, если пишешь движок для игры.

  • @ВикторКолесниченко-м6ы

    Cними видео "Кем можно устроиться на работу владея языком с++"!!!

    • @theos1489
      @theos1489 6 років тому

      Программистом лол)))

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

      Касиром в пятерочке

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

    А как заполнить первую строку второй строкой, у первой строки стоит ограничение по символам и вторая строка меньше чем первая?

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

    У меня в компиляторк говорит что strcat неправильный?Есть советы

  • @borisshalabanov4620
    @borisshalabanov4620 7 років тому +16

    не работает функция strcat, буквально переписал код, всеравно 0 реакции.

    • @dmytrovietsu4224
      @dmytrovietsu4224 7 років тому +44

      Используйте strcat_s();

    • @michaelspace532
      @michaelspace532 6 років тому +4

      отключи в настройках проекта->c/c++->общие->sdl проверка->нет

    • @olegbocharnikov950
      @olegbocharnikov950 5 років тому +7

      strcat_s попробуй

    • @АуеШпак
      @АуеШпак 4 роки тому +1

      @А. С., strcat() при дефолтных настройках проекта не работает, типо strcat может быть небезопасен.

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

    У меня есть потребность интежеровское значение также добавить в строку, но (char)nNamesNum + 48 - 2) почему-то не работает. Как мне это сделать? И вообще, что еще и каким образом можно добавлять в строку?

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

      std::to_string(IntValue) Вам в помощь

  • @ami92ish
    @ami92ish 5 років тому

    Может кто-нибудь подскажет, прописала setlocale(LC_ALL, "rus"), однако если вывести text3=text1+text2, где text1 и text2 введены через cin на русском, получается абракадабра. Если text1 и text2 инициализировать в программе на русском, то text3 нормально выводится на русском.

  • @СергійІванов-с1х
    @СергійІванов-с1х 4 роки тому

    Если вввожу переменную string через cin, не определяет русский язык, выдает точки и вопросы. Если сразу присваиваю, то все в порядке. Как быть?
    Спасибо.

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

      setlocale в коде есть?

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

    Книга "Мартин Боруля ", если кто не понял...

  • @antandgen
    @antandgen 6 років тому

    Я не понял, а вот слова:"..чтобы нам не испоганить вот эту строчку". Что значит не испоганить? Что с ней может случиться?

  • @den1ssss
    @den1ssss 7 років тому +1

    а string ведь должен входить в iostream

  • @ComputerGamesDima
    @ComputerGamesDima 6 років тому

    setlocale не работает , в таблице выводи кириллицу , а с клавиатуры нет

  • @ЮРИЙНЕБАС
    @ЮРИЙНЕБАС 2 роки тому

    Мартин Иден!

  • @МуратДжалилов-т1о
    @МуратДжалилов-т1о 3 роки тому

    подскажите, пожалуйста, а как в классе string получить длину строки?

  • @alexmuzychuk5969
    @alexmuzychuk5969 6 років тому +3

    Можливо я бачив не всі твої відео, але в одному з них де ти розповідав про історію як ти став програмістом ти не розповів в якій саме сфері працюєш і чим займаєшся, мені дуже цікаво було б дізнатися!!!

  • @КонстантинЖуков-ы2я

    5:50 а почему Hello не помещается, там же в скобках [5], то есть от 0 до 5, и для Hello и для "\0" должно хватить места, "\0" это ж 1 символ

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

      Потому что H - 1, E - 2, L - 3, L - 4, O - 5, \0 - 6

    • @Сергей-т9д7в
      @Сергей-т9д7в 3 роки тому +2

      при обьявлении массива [5] - означает массив на 5 элементов, от нуля до 4. На этом заостряли внимание при изучении массивов.
      const char a[5]; //создать массив на 5 элементов
      cout

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

    +

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

    13:37 что за книга? скажи пожалуйста

  • @Viamsupervadetvadens
    @Viamsupervadetvadens 7 років тому

    up

  • @marksmith1883
    @marksmith1883 6 років тому

    Как с клавиатуры ввести через cin в string строку на русском, а затем вывести её на экран правильно а не крякозяблики?

    • @halty1798
      @halty1798 5 років тому

      setlocale(LC_ALL, "rus");

  • @Alex_Suvorov
    @Alex_Suvorov 9 місяців тому +1

    и да, привет из 2024 месяц февраль

  • @Владислав-орк
    @Владислав-орк 2 роки тому

    Всем здравствуйте! Есть проблема!!!
    const char* string = "ABC";
    sizeof(string) = 8. Почему 8??? Ведь 3 символа и \0, итого 4. Если написать хоть 100 букв вместо "ABC" то все равно sizeof(string) = 8...
    При этом если вот так:
    char string[ ] = "ABC";
    sizeof(string) = 4.
    В чем тут дело???
    А если дописать вот так:
    const char* string2 = string; то все равно:
    sizeof(string) = 4. ; sizeof(string) = 8

    • @Сергей-т9д7в
      @Сергей-т9д7в 2 роки тому +2

      sizeof возвращает размер сущности в скобках.
      const* char string - это указатель. (size of возвращает размер указателя, 8 байт - это размер для 64 битных указателей).
      char string[] - это статический массив. (size of возвращает размер массива). Почему 4? Записью типа "ABC" вы вначале создаете указатель на строку ABC\0 (тоесть появляется терм нуль, вместе с которым как раз 4 символа, и эти 4 символа перемещаются в статический массив.
      А когда вы дописываете string2 = string, вы опять создаете указатель, размер которого 8 байт, который ссылается на первую ячейку массива string[].
      Автор еще будет (или уже) рассказывать о статических массивах, работой sizeof с ними, и как они неявно рассыпаются на указатель при передаче в функции.

  • @ArtemBobryanskiy
    @ArtemBobryanskiy 2 місяці тому

    к сожалению strcat устарел, cstring библиотека дает доступ к strcat_s

  • @barnatykz159
    @barnatykz159 5 років тому +4

    Нихуя не понял, но очень интересно)

  • @АлексейМелентьев-ч3в

    не досмотрел..вери проста)

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

    зачем библиотека, если итак строки работают? или в ней расширенный функционал?

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

      Доп функции

  • @Илья-ц4й6в
    @Илья-ц4й6в 6 років тому

    спектр

  • @temshik.invalid
    @temshik.invalid 3 роки тому

    5:00

  • @kadyshev2759
    @kadyshev2759 5 років тому +3

    Все тут уже дохрена взрослые, после вузов, шараг, универов, а я смотрю эти видео учась в 8 классе.

    • @temshik.invalid
      @temshik.invalid 3 роки тому

      я тоже)) ток ты уже в 9, ну что как успехи?

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

      @@temshik.invalid я уже на 2 курсе технаря, пересматриваю иногда)

  • @aln9391
    @aln9391 6 років тому

    Интересно почему женские трусы стрингами называются. В чем сходство?

    • @VVpepper8686
      @VVpepper8686 6 років тому +1

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

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

    Настолько хреновые функции? Я когда подобную функцию делал, (strcat) научил её работать и с массивом, в котором нихрена нет...
    Дадаясамыйумный(нет)

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

      Привет, а как ты проверял destination на наличие мусора? Можешь, если не сложно, скинуть код этой функции? Интересно было бы посмотреть.

  • @АяулымУсенкызы-д6р

    Спасибо за урок👍

  • @ЯрославГоловко-ф6и

    спасибо

  • @temshik.invalid
    @temshik.invalid 3 роки тому

    12:00

  • @temshik.invalid
    @temshik.invalid 3 роки тому

    10:00

  • @temshik.invalid
    @temshik.invalid 3 роки тому

    9:00

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

    спасибо

  • @РусланКарнеенко
    @РусланКарнеенко 6 місяців тому

    Спасибо