std:string и \0 в самом конце
От: Shmj Ниоткуда  
Дата: 30.03.25 14:13
Оценка:
Ну вопрос не новый: https://stackoverflow.com/questions/11752705/does-stdstring-have-a-null-terminator

Но как-то мнения расходятся.

std::span messageSpan(reinterpret_cast<uint8_t*>(jsonText.data()), jsonText.size() + 1);


Так могу я написать и гарантировать что не вылезу за пределы памяти, которые контролирует строка std::string jsonText?

GPT говорит что начиная с C++17 стандарт гарантирует дополнительный байт 0 в самом конце и можно на это опираться.
=сначала спроси у GPT=
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.