网络IPC, socket(5): 简单TCP连接示范代码

本文展示了如何使用socket进行TCP连接的简单实现,包括服务器端和客户端的代码结构,涉及socket初始化、bind、listen、accept和send操作。通过示例代码解释了服务器如何接收和发送欢迎消息,以及客户端如何接收并打印这些消息。
摘要由CSDN通过智能技术生成
根据前面的文章得知, 不管是任何类型的socket, 都需要填充一个struct sockaddr结构, 在Linux下是struct sockaddr_in类型, 然后强制转换为struct sockaddr.


1. 首先用init.h文件声明一个初始化函数来进行这个结构的填充工作:
#ifndef INIT_H
#define  INIT_H


/* include */
#include 
< sys / socket.h >
#include 
< sys / types.h >
#include 
< arpa / inet.h >
#include 
< netinet / in .h >

/* macro */
#define  PORT 1104

/* function */
int  socket_init( struct  sockaddr_in  * addr);


#endif
这里包含了必要的头文件, 访问的server端口号(PORT), 和socket_init函数的声明.

这个socket_init函数的实现是在init.c文件中:
#include  < string .h >
#include 
" init.h "


/* initalize sockaddr structure */
int  socket_init( struct  sockaddr_in  * addr)
{
    
int sockfd;

    bzero(addr, 
sizeof(struct sockaddr_in));
    addr
->sin_family = AF_INET;
    addr
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值