[CSocket]Send指针指向的缓冲区时失误报271E
[CSocket]Send指针指向的缓冲区时出错报271E
不知道这两种调用怎么会相差如此,请大家帮看看
------解决方案--------------------
char* pBuffer=(char*)malloc(SIZE_BUFFER);
这里也需要memset
memset(pBuffer, 0, sizeof(SIZE_BUFFER));
------解决方案--------------------
你先试试 new的方式会不会出错。malloc的问题在研究
------解决方案--------------------
10014 : 系统检测到在一个调用中尝试使用指针参数时的无效指针地址。
看下你的指针是否有效?
------解决方案--------------------
代码中做了初始化,只是没插入...
------解决方案--------------------
多贴些代码吧,这点不足以说明情况,拷贝到数组可能只是表象,不足以确认两者存在差异。
- C/C++ code
char* pBuffer=(char*)malloc(SIZE_BUFFER); ************************ ************************ ************************ //pBuffer指向的内存数据是16进制串 lSend = Send(pBuffer+lSendTotal, lBuffer-lSendTotal); dwError = GetLastError(); //这样用总会报271E //然而如果我把pBuffer+lSendTotal指向的内容放到一个char[]里就正常 //类似 char chBuffer[8192]={0}; memset(chBuffer, 0, sizeof(chBuffer)); memcpy(chBuffer, pBuffer+lSendTotal, xxxxx); //再进行Send操作时查看GetLastError()就是0
不知道这两种调用怎么会相差如此,请大家帮看看
------解决方案--------------------
char* pBuffer=(char*)malloc(SIZE_BUFFER);
这里也需要memset
memset(pBuffer, 0, sizeof(SIZE_BUFFER));
------解决方案--------------------
你先试试 new的方式会不会出错。malloc的问题在研究
------解决方案--------------------
10014 : 系统检测到在一个调用中尝试使用指针参数时的无效指针地址。
看下你的指针是否有效?
------解决方案--------------------
代码中做了初始化,只是没插入...
------解决方案--------------------
多贴些代码吧,这点不足以说明情况,拷贝到数组可能只是表象,不足以确认两者存在差异。