socket发送图片! 先用CFILE的函数用二进制读取一副图片,然后用send函数发送,但是他的第二个参数是char*类型的,如果读取的图片中有0,那么char*中的内容只有0之前的内容, 那么接受到的图片将不能正常显示! 请问怎么办? 感谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用memcpy填充buffer,当然还要加长度 不是这个意思啊 我是说 用二进制读取图片的时候 其中有0 那么char* 就会自动阶断! 是不是send(..,(char*)BYTE,...) 强制转换后发送? send的第三个参数是长度,不论第二个参数指针是什么类型,它都会尽可能的(当然是尽可能的,有可能缓冲区没那么大地方了)复制指定长度的数据到缓冲区。所以即使用char*,并且其中有0,只要长度指定的正确不会影响发送。 那我能不将文件读出来的数据保存到BYTE 数组里面 然后强制转换为char* 发送出去呢? BYTE* 就是 char*啊,你使用char*发过去时,实际都是发过去一些二进制的字节(0也是一个字节而已),第三个参数标识了这些二进制字节的长度。实际上你只要不把char*转成字符串的话,就不会遇到0而截断的。试试就知道了。 真心求大家分析下下面我2通宵没看懂的代码中的消息循环!感谢一辈子 为什么我的类视图里没有的建的一个类?其他视图里都有这个类,还有这个类对应的对话框呢 请教如何在一个PICTURE控件画一个含箭头的线到另外一个PICTURE控件 初学者求助改错 混的不成样子了,好郁闷啊。。。 C++将成为最好的RAD(GUI)开发语言!!! 救急:如何向第二张声卡播放mp3文件?? 小问题: WS_POPUP | WS_VISIBLE 如何改为不可见? 我在VC 6.0下怎么用2002年1月的MSDN? 求救标签控件的问题 如何编写网页自动填表单程序? 关于DLL注入的一个问题
那我能不将文件读出来的数据保存到BYTE 数组里面 然后强制转换为char* 发送出去呢?