我有超过 400万字符的字符串,我想通过套接字发送此字符串。但是,send()只能接受const char
。我尝试使用c_str()
。
我的字符串包含多个空终止符\ 0,因此c_str ()
无法正常工作。任何想法如何删除或替换 \ 0
答案 0 :(得分:2)
您还可以指定要在同一功能中发送的缓冲区的长度。我还建议将4MB缓冲区分成小块,然后一个接一个地发送,因为send
函数允许的缓冲区大小可能有限制。
答案 1 :(得分:0)
str.erase(std::remove(str.begin(), str.end(), '\0'), str.end());