cae32 (cae32) wrote,
cae32
cae32

Category:

Новое курево в c++

Как мы уже знаем, я последнее время покуриваю стандарт. В целях понимания поведения чёрного ящика.

Очередные открытия попались в донельзя тривиальной basic_string& assign(const charT* s, size_type n).
Что там можно намутить, просто, как бревно? Но нет. Replaces the string controlled by *this with a string of length n whose elements are a copy of those pointed to by s.

Выглядит логично. На первый взгляд. Но никто не запрещает (более того в libstdc++, которое гнутое, просто делается копирование всех n), чтобы посреди n символов внезапно был \0. Ну будете потом передавать в C-only libs c_str(), а гражданин по сети возьми и передай 0. В плюсовой части 512 байт, в сишной 10. Збс. Привыкли к поведению strncpy? На!
Tags: c++
Subscribe

  • История Успеха

    Сбербизнес рекламирует свои ненавязчивые услуги вот каким чудесным текстом. Финал истории просто прекрасен. Омичи не подкачали, показали, что…

  • Агаев, Пагаев и Бахва Тедеев

    Был такой номер в прочно забытой теперь юмористической передаче времён Алании. Ждём-с. Надеюсь, получится лучше, чем у Палыча.

  • Обход Аксая построят раньше

    Денег дали. И вот как об этом написали журналисты:

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment