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

Поделиться
HTML-код
  • Опубликовано: 28 сен 2024
  • Понравилось видео или оказалось полезным? Подпишись!
    Конкатенация строк что это. Объединение строк.Тип данных string c++ что это. c++. C ++ Для начинающих. Урок #64
    Уроки по программированию
    Наша группа ВК smplcode
    Подписывайтесь на канал / @simplecodeit

Комментарии • 149

  • @НиколайПокровский-р6в

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

    • @SimpleCodeIT
      @SimpleCodeIT  7 лет назад +33

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

    • @arkanruler1593
      @arkanruler1593 5 лет назад +2

      +

    • @arkanruler1593
      @arkanruler1593 5 лет назад +6

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

    • @sheldon3705
      @sheldon3705 5 лет назад +11

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

    • @ДенисКвантум
      @ДенисКвантум 4 года назад +12

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

  • @ЕвгенийДьячков-о5в
    @ЕвгенийДьячков-о5в 6 лет назад +77

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

  • @SimpleCodeIT
    @SimpleCodeIT  7 лет назад +18

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

  • @АлексейГуськов-и5б
    @АлексейГуськов-и5б 7 лет назад +58

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

    • @SimpleCodeIT
      @SimpleCodeIT  7 лет назад +58

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

    • @yastepan
      @yastepan 8 месяцев назад

      ​@@SimpleCodeITгдеееее

    • @Alndr
      @Alndr 7 месяцев назад

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

    • @МодельерКонструктор
      @МодельерКонструктор 6 месяцев назад

      @@yastepan У Путина спросите.

  • @nosferatu2799
    @nosferatu2799 5 лет назад +38

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

    • @michaelmichael8602
      @michaelmichael8602 4 года назад +7

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

    • @lene3667
      @lene3667 2 года назад +1

      Озлобленные люди

  • @valentinashevy8670
    @valentinashevy8670 Год назад +6

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

  • @Ermine882
    @Ermine882 7 лет назад +8

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

  • @___2303
    @___2303 2 года назад +3

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

  • @indeec9538
    @indeec9538 4 года назад +37

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

    • @AlexGold
      @AlexGold 3 года назад +2

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

    • @qwert334
      @qwert334 3 года назад

      пишет : function strcat is unsafe

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

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

  • @Firuz26
    @Firuz26 7 лет назад +13

    Спасибо

  • @ВладиславФедун
    @ВладиславФедун 6 лет назад +2

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

  • @СергейПанин-и4у
    @СергейПанин-и4у 7 лет назад +4

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

  • @ИоаннДейкун
    @ИоаннДейкун Год назад +1

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

  • @gasplyak8405
    @gasplyak8405 6 лет назад +3

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

  • @mr.warpunch6007
    @mr.warpunch6007 2 года назад

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

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

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

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

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

  • @ДенисКвантум
    @ДенисКвантум 4 года назад

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

  • @VVpepper8686
    @VVpepper8686 5 лет назад

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

  • @ДанилаИванов-о3у
    @ДанилаИванов-о3у 5 лет назад +7

    Дугин))))))

  • @ОлегСизов-ф4б
    @ОлегСизов-ф4б 2 месяца назад

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

  • @ninjamoons8190
    @ninjamoons8190 Год назад

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

  • @alexyakoveno4682
    @alexyakoveno4682 Год назад

  • @ttorb2268
    @ttorb2268 3 года назад

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

  • @batlord5031
    @batlord5031 5 лет назад

    8:41 - string.

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

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

    • @theomi8633
      @theomi8633 6 лет назад

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

    • @arsIsv
      @arsIsv 2 года назад

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

  • @СергійІванов-с1х
    @СергійІванов-с1х 4 года назад

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

    • @Xenobolus
      @Xenobolus 4 года назад

      setlocale в коде есть?

  • @den1ssss
    @den1ssss 7 лет назад +1

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

  • @OlehIvsv
    @OlehIvsv 3 года назад +1

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

  • @МуратДжалилов-т1о
    @МуратДжалилов-т1о 3 года назад

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

  • @Viamsupervadetvadens
    @Viamsupervadetvadens 6 лет назад

    up

  • @Alex_Suvorov
    @Alex_Suvorov 7 месяцев назад

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

  • @kadyshev2759
    @kadyshev2759 5 лет назад +2

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

    • @temshik.invalid
      @temshik.invalid 3 года назад

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

    • @kadyshev2759
      @kadyshev2759 2 года назад

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

  • @PROFESSAR505
    @PROFESSAR505 Год назад +85

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

    • @sae9016
      @sae9016 Год назад +3

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

    • @chmowashe2221
      @chmowashe2221 Год назад +4

      мега хорош

    • @morpex_alex
      @morpex_alex Год назад

      Спасибо !

    • @akyla8307
      @akyla8307 10 месяцев назад

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

  • @elizavetalipen5466
    @elizavetalipen5466 3 года назад +17

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

    • @Mani_Fast
      @Mani_Fast 2 года назад +2

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

  • @solomonchannel3573
    @solomonchannel3573 6 лет назад +37

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

    • @SimpleCodeIT
      @SimpleCodeIT  6 лет назад +15

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

  • @borisshalabanov4620
    @borisshalabanov4620 6 лет назад +16

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

    • @dmytrovietsu4224
      @dmytrovietsu4224 6 лет назад +44

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

    • @michaelspace532
      @michaelspace532 6 лет назад +4

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

    • @olegbocharnikov950
      @olegbocharnikov950 5 лет назад +7

      strcat_s попробуй

    • @АуеШпак
      @АуеШпак 4 года назад +1

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

  • @АуеШпак
    @АуеШпак 4 года назад +7

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

  • @endlessvd
    @endlessvd 2 года назад +1

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

  • @pavelios3577
    @pavelios3577 4 года назад +3

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

  • @Лев-й7я
    @Лев-й7я 3 месяца назад +1

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

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

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

  • @ArtemBobryanskiy
    @ArtemBobryanskiy 29 дней назад

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

  • @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,

    • @artempopas5310
      @artempopas5310 Год назад

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

  • @safocl9768
    @safocl9768 5 лет назад +2

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

    • @АндрейЕремеев-п8ь
      @АндрейЕремеев-п8ь 5 лет назад

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

  • @Alex_Suvorov
    @Alex_Suvorov 7 месяцев назад +1

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

  • @tokyoto9386
    @tokyoto9386 Год назад +1

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

  • @lennoxmacduff2037
    @lennoxmacduff2037 6 лет назад +2

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

  • @aviorwhosits
    @aviorwhosits 5 лет назад +5

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

  • @alibekcs
    @alibekcs 3 года назад +1

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

  • @cnhfgjy
    @cnhfgjy 2 года назад

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

  • @СтарыйВаленок-к4л
    @СтарыйВаленок-к4л 3 года назад +1

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

  • @chelovechek7773
    @chelovechek7773 4 месяца назад

    спасибо !

  • @РусланКарнеенко
    @РусланКарнеенко 4 месяца назад

    Спасибо

  • @ТехникРальф-х7т
    @ТехникРальф-х7т 5 лет назад +1

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

  • @Radix-z7n
    @Radix-z7n 7 лет назад +3

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

    • @SimpleCodeIT
      @SimpleCodeIT  7 лет назад +6

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

    • @jangiryanarsen4952
      @jangiryanarsen4952 6 лет назад +5

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

  • @archiechellaut9483
    @archiechellaut9483 3 года назад +1

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

  • @ЮРИЙНЕБАС
    @ЮРИЙНЕБАС Год назад

    Мартин Иден!

  • @ami92ish
    @ami92ish 5 лет назад

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

  • @AsonGor
    @AsonGor 5 лет назад

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

  • @romankuznetsov4601
    @romankuznetsov4601 2 года назад

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

  • @ВиталийРаца-ч2щ
    @ВиталийРаца-ч2щ 4 года назад

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

  • @hutoryanin
    @hutoryanin 3 года назад

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

  • @ComputerGamesDima
    @ComputerGamesDima 6 лет назад

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

  • @sealkeen
    @sealkeen 6 лет назад

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

  • @mikesteinar2713
    @mikesteinar2713 4 года назад

    Is C method works faster than C++ method?

  • @SeshAlex
    @SeshAlex 6 лет назад +1

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

  • @ДаниилНепелев-н4х
    @ДаниилНепелев-н4х 2 года назад

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

  • @АртурГребешков-к6ж
    @АртурГребешков-к6ж 6 лет назад +1

    Спасибо!

  • @ЛевПрав-л3у
    @ЛевПрав-л3у 4 года назад

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

  • @antandgen
    @antandgen 6 лет назад

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

  • @barnatykz159
    @barnatykz159 5 лет назад +3

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

  • @Shiefavv
    @Shiefavv 3 года назад

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

  • @fantomasik3431
    @fantomasik3431 2 года назад

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

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

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

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

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

  • @Илья-ц4й6в
    @Илья-ц4й6в 6 лет назад

    спектр

  • @biscvie
    @biscvie 2 года назад

    +

  • @Владислав-орк
    @Владислав-орк 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 с ними, и как они неявно рассыпаются на указатель при передаче в функции.

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

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

  • @gagikarakelyan6014
    @gagikarakelyan6014 4 года назад

    спасибо

  • @ruslan_yefimov
    @ruslan_yefimov 4 года назад

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

    • @nikita_zinoviev
      @nikita_zinoviev 4 года назад

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

  • @neordinator
    @neordinator 4 года назад

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

    • @svvonline1
      @svvonline1 Год назад

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

  • @ЯрославГоловко-ф6и
    @ЯрославГоловко-ф6и 4 года назад

    спасибо

  • @marksmith1883
    @marksmith1883 5 лет назад

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

    • @halty1798
      @halty1798 5 лет назад

      setlocale(LC_ALL, "rus");

  • @ИгорьК-ю1п
    @ИгорьК-ю1п 4 года назад

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

  • @muhammadabdulloev3600
    @muhammadabdulloev3600 3 года назад

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

  • @aln9391
    @aln9391 6 лет назад

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

    • @VVpepper8686
      @VVpepper8686 5 лет назад +1

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

  • @bzych8965
    @bzych8965 3 года назад

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

    • @arsIsv
      @arsIsv 2 года назад

      Доп функции

  • @КонстантинЖуков-ы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

  • @ylikitishnik1946
    @ylikitishnik1946 3 года назад

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

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

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

  • @alexmuzychuk5969
    @alexmuzychuk5969 6 лет назад +3

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

  • @temshik.invalid
    @temshik.invalid 3 года назад

    12:00

  • @temshik.invalid
    @temshik.invalid 3 года назад

    10:00

  • @temshik.invalid
    @temshik.invalid 3 года назад

    9:00

  • @temshik.invalid
    @temshik.invalid 3 года назад

    5:00