linux和window下socket接口函数的传入参数不匹配,导致出错。
来源:互联网 发布:opencv 图像加减源码 编辑:程序博客网 时间:2024/04/29 16:50
linux下的socket接口函数:
send(,void*data,);
receive(,void*data,);
window下的socket接口函数:
send(,FAR const char *data,);
recieve(,FAR const char *data,);
如果服务器在linux端,而客户端在window下,不对处理,就会出现数据接收显示出错。
下面一段代码可以说明采用动态内存方式接收数据,用所需类型指针来读取内存数据,可以解决这个问题。
#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct {char c[10];int a;char b;} IP;int main(int agrc,char *argv[]){IP ip={"hello",4,-45};//strcpy(ip.c,"world");IP *j;char *p;p=( char *)malloc(sizeof(IP)); 申请内存,并赋予char型指针j=p; 相当于一个内存区地址被赋予两种不同数据类型的指针,你用哪个指针就可以把内存中的数据解析成那种数据类型。memcpy(p,&ip,sizeof(IP)); 将结构体数据拷入内存 发送的时候就可以传参 P printf("p data is :%s,%d,%d",j->c,j->a,j->b); free(p);getchar(); return 1; }
- linux和window下socket接口函数的传入参数不匹配,导致出错。
- Linux下使用getopt函数来获取传入的参数
- Window和Linux下Socket的区别
- 项目中与php后台交接接口 javabean与请求返回的数据类型不匹配导致的出错
- 头文件和.a(库文件不匹配)导致虚函数错位,进而导致的bug
- 函数的传入和传出参数
- Jmeter使用_time函数实现同一个接口参数传入可以每次传入不同的参数
- linux下socket和window下区别
- Window Socket和Linux socket的区别
- Restful接口传入多参数的问题和解决方案
- pthread_create函数 参数不匹配的问题
- linux下socket函数之listen的参数backlog
- Linux/Window下socket
- linux下socket编程接口处理函数
- javascript函数内设置传入参数对象导致函数外的实参被修改
- 对 PInvoke 函数“...”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配
- 匿名函数的参数传入
- PL/SQL函数的传入参数名称要规范,不能和函数内使用到的表的字段名称一样,否则会出错(带例子)
- 离开
- MFC 更改界面IDC_STATIC颜色和字体以及大小【二】
- C语言动态数组的完整实现
- IIS7.0 检测到在集成的托管管道模式下不适用的ASP.NET设置 的解决方法
- KEIL MDK输出map文件分析
- linux和window下socket接口函数的传入参数不匹配,导致出错。
- 学习Linux二(创建、删除文件和文件夹命令)
- [转]SQL Server 2012中快速插入批量数据的示例及疑惑 .
- win7下配置iis 虚拟目录
- 几个主流数据库的常用操作的链接
- 如何拥有一个初学者的心态
- database
- C语言队列的实现
- c++中new和delete的使用方法