Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @brief Change a std::stringstream to a char array.
- * @param ss The stringstream to convert.
- * @return nullptr on failure, a new char array on success.
- * @note The returned string must be freed to avoid memory leaks.
- */
- char *STRPP::StringStreamToCharArray(std::stringstream &ss) {
- std::string tmpString = ss.str();
- try {
- std::vector<char> buffer(tmpString.begin(), tmpString.end());
- buffer.push_back('\0');
- auto newString = (char *) malloc(tmpString.length());
- if (newString == nullptr) {
- return nullptr;
- }
- memcpy(newString, &buffer[0], tmpString.length());
- return newString;
- } catch (std::bad_alloc &e) {
- return nullptr;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement