- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TCP双机通信示例代码参考
TCP双机通信源代码参考
/* tcpExample.h - header used by both TCP server and client examples */
/*定义结构体,保存待传输的信息,是否回应,以及信息长度*/
#define SERVER_PORT_NUM 5001 /* servers port number for bind() */
#define SERVER_WORK_PRIORITY 100 /* priority of servers work task */
#define SERVER_STACK_SIZE 10000 /* stack size of servers work task */
#define SERVER_MAX_CONNECTIONS 4 /* max clients connected at a time */
#define REQUEST_MSG_SIZE 1024 /* max size of request message */
#define REPLY_MSG_SIZE 500 /* max size of reply message */
/* structure for requests from clients to server */
struct request
{
int reply; /* TRUE = request reply from server */
int msgLen; /* length of message text */
char message[REQUEST_MSG_SIZE]; /* message buffer */
};
/* tcpClient.c - TCP client example */
/* tcpClient是下载到Client端的程序,其完成的功能是建立连接,通过套节字进行数据传输,传输的数据包括信息,是否回应。出错,返回错误信息*/
#include vxWorks.h
#include sockLib.h
#include inetLib.h
#include stdioLib.h
#include strLib.h
#include hostLib.h
#include ioLib.h
#include tcpExample.h
STATUS tcpClient ( char * serverName ) /* Server机的IP地址 */
{
struct request myRequest; /*定义的结构体,保存信息和回复请求以及信息长度 */
struct sockaddr_in serverAddr; /* server端的套节字地址 */
char replyBuf[REPLY_MSG_SIZE]; /* 保存回复信息的数组*/
char reply; /*回复请求 */
int sockAddrSize; /* server端的套节字地址结构体的长度*/
int sFd; /*保存套节字的设备*/
int mlen; /*信息长度 */
/* 建立套节字,用于在两机之间进行数据传输*/
if ((sFd = socket (AF_INET, SOCK_STREAM, 0)) == ERROR)
{
perror (socket setup error!\n);
return (ERROR);
} /*套节字建立失败,返回错误信息*/
sockAddrSize = sizeof (struct sockaddr_in);
bzero ((char *) serverAddr, sockAddrSize);
serverAddr.sin_family = AF_INET;
serverAddr.sin_len = (u_char) sockAddrSize;
serve
文档评论(0)