socket send返回值_网络编程——C++实现socket通信(TCP)

相关函数:

服务端:

socket()
bind()
listen()
accept()
read() 或 recv()等
write() 或 send()等
close()
客户端:
socket()
connect()
write() 或 send()等
read() 或 recv()等
close()

注意:每当服务端连接断开后,进入TIME_WAIT状态,等待2msl时间之后才能重新使用IP和端口,否则在bind时就会报错。要解决这个问题可以在程序开始时调用端口复用函数setsockopt。原型如下:

//int setsockopt(int sockfd, int level, int optname,const void *optval, socklen_t optlen);
/* sockfd:标识一个套接口的描述字。
   level:选项定义的层次;支持SOL_SOCKET、IPPROTO_TCP、IPPROTO_IP和IPPROTO_IPV6。
   optname:需设置的选项。
   optval:指针,指向存放选项值的缓冲区
   optlen:optval缓冲区长度。
   返回值: 成功返回0,失败返回 -1. */
实际调用:
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));

废话不多说,上源码!

实现的功能:客户端C向服务端S发送一串字符数据,S端会对字符串做转大写操作然后回发给C端

服务端TCP_Server.cpp

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值