函数原型
char pic_info[PACK_SIZE];
boost::asio::read(socket,buffer(pic_info),transfer_exactly(X),ec)
当我使用char *pic_info = new char[PACK_SIZE + 1]
的时候,会发生下列错误
这是一个socket的简单服务器,用于接受图片,
由于图片的大小不确定,1k到5m都会有,使用char pic_info[PACK_SIZE]会严重浪费内存,所以我想用一个动态字符串接受传过来的图片
可以使用streambuf(二进制流)的方式直接动态分配内存
同时使用read_until函数读取结束符
最后可以再转换成string类型进行使用