Я новичок в C++ и программировании, и я хотел бы знать, есть ли способ получить длину указателя.
Скажем, Myheader - это структура с различными типами данных внутри.
Мой код выглядит следующим образом:Хотите знать длину буфера C++
char *pStartBuffer;
memcpy(pStartBuffer, &MyHeader, MyHeader.u32Size);
Так что я хочу знать длину буфера, так что я могу скопировать данные в файл с помощью функции записи QT.
file.write(pStartBuffer, length(pStartBuffer));
Как это сделать?
Я надеюсь, что ваш реальный код выделяет память для 'pStartBuffer'? –
И нет, нет стандартного способа узнать длину памяти, на которую указывает указатель. Вы должны сами отслеживать это. –
Не используйте буфер 'char' в первую очередь. Используйте 'std :: string', и ничто из этого не будет проблемой. –