设为首页 加入收藏

TOP

UNIX TCP回射服务器/客户端
2014-11-24 08:32:25 来源: 作者: 【 】 浏览:0
Tags:UNIX TCP 服务器 客户端

程序简介:这个一个专门用于测试TCP服务器的客户端。它的原理很简单,利用TCP协议,先和指定的服务器建立连接,然后从终端读取一段字符串,并发送给服务器,最后读取服务器的返回,并显示在终端上。


上代码:


#include "my_unp.h"


void str_cli(FILE *fp, int sockfd)
{
char sendline[MAXLINE], recvline[MAXLINE];
int len;


//从终端获取一行字符串,将其写入套接字
//然后从套接字一行字符串,将其写入终端
while( Fgets(sendline, MAXLINE, fp) != NULL )
{
Writen(sockfd, sendline, strlen(sendline));
len = Read(sockfd, recvline, MAXLINE);
if( len == 0 )
error_quit("str_cli: server terminated prematurely");
recvline[len] = 0;
Fputs(recvline, stdout);
}
}


int main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in servaddr;
if( argc != 2 )
error_quit("usage: client ");


//创建用于TCP协议的套接字
sockfd = Socket(AF_INET, SOCK_STREAM, 0);
memset(&servaddr, 0, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(SERV_PORT);


//将程序的参数1(argv[1])转换成套接字地址结构
Inet_pton(AF_INET, argv[1], &servaddr.sin_addr);
////向服务器发起连接,连接成功后client_socket代表了客户机和服务器的一个socket连接
Connect(sockfd, (SA*)&servaddr, sizeof(servaddr));


str_cli(stdin, sockfd);
return 0;
}


运行示例(红色字体的为输入)(假设某个回射字符串的服务器已经启动)


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇《UNIX网络编程》例子程序中所使.. 下一篇Hibernate框架映射Oracle中long类..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·如何理解c语言指针和 (2025-12-27 01:19:11)
·为什么C标准库没有链 (2025-12-27 01:19:08)
·玩转C语言和数据结构 (2025-12-27 01:19:05)
·MySQL 基础入门视频 (2025-12-26 23:20:22)
·小白入门:MySQL超详 (2025-12-26 23:20:19)