求教:网络传输中的数据格式处理 我正在尝试写一个通讯协议,它的桢内容里有16进制数,二进制数,长整型等.我的理解是在sand,receive命令里发出接收的都是ASCII码吧.那么要传这些数据,代码里数据类型怎么定呢?一些相关代码应该怎么写呢?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sand,receive, 你想收、发什么都行,不只简单的ascii你写的东西是基于TCP/IP的吧,不会是要自己写网络驱动吧,那工程可大了 "我的理解是在sand,receive命令里发出接收的都是ASCII码吧."呵呵, 那如果发送图形呢? 显然不是ASCII码的, send accept recv 什么的, 参数都是缓冲区指针, 大小之类.写通信协议? admire一下, 工程是太大了, 再说工业标准都是tcp/ip 谁来支持你的协议? 呵呵, 用来试下手倒是不错, 呵呵 不管你要发送什么类型的数据,你都可以将他们转换成char类型发送,然后在接收方在按照自己定义的格式去读取就可以,你可以发送任何计算机可以存储的数据,跟是不是10进制,是不是BMP图象,在链路层以下,没有这些概念,而是计算机识别的01代码,我们说的什么结构,图象,声音等在TCP/IP协议栈中属于应用层的数据,其实到了TCP及其以下就没有这些概念了.所以你不用担心,我这里有个例子,如果需要的话,mail:[email protected] char buffer[1024];struct mydata{ int i; char ch[8]; float f;}struct mydata * pdata = (struct mydata *)buffer; pdata->i = 10 ; memcpy(pdata->ch,"i love u",strlen("i love u")); pdata->f = 1.3;UDP:sendto(buffer,sizeof(struct mydata),"192.9.200.203",3000);tcp: tcpsocket.send(buffer,sizeof(struct mydata),0); 同意anyiflyer(西门吹雪),数据类型用自己写的结构定义就行了.收发的时候按自己定义的格式读取和发送就行了. VC++ 中 workspace 是干什么的? VC 关于弹出对话框问题 用ATL写的excel 插件工程启动时没有_IDTExtensibility2到OnConnection接口 16位JPG灰度数据转换 (急)XML 文件中的bin 数据用什么类型变量读取 (CString 报错) 请问在explorer里双击运行程序时,系统调用的哪个API? 哪里有《Visual c++技术内幕》第四版(中文)电子书? 什么是ACTIVE X? 神一般的BUG....,求诸大神 软件加密高手请进;有钱赚! 问大家一个数学问题,数学高手或者记性好的同志请进来 将字符串转换成MAC地址???
struct mydata{
int i;
char ch[8];
float f;
}struct mydata * pdata = (struct mydata *)buffer;
pdata->i = 10 ;
memcpy(pdata->ch,"i love u",strlen("i love u"));
pdata->f = 1.3;
UDP:
sendto(buffer,sizeof(struct mydata),"192.9.200.203",3000);
tcp:
tcpsocket.send(buffer,sizeof(struct mydata),0);