网络通讯基础(9):connect ()函数
2023-12-30 10:31:06
connect ()函数
1.什么是connect 函数?作用是什么?
connect 是一个常用于网络编程的函数,它通常用于建立客户端和服务器之间的连接。要想使用connect 函数,需要包含如下头文件:
#include <sys/types. h>
#include <sys/socket. h>
2.connect 函数定义
int connect (int sockfd, const struct sockaddr *addr ,socklen_t addrlen);
其中sockdf代表已被绑定的socket 文件描述符;addr为服务器端的地址信息,含I地址和端口号
;addrlen用于存储地址结构的长度,即传入sizeof (addr)。connect成功返回0,失败返回-1。
可以看出connect 和 bind 的参数形式一致,区别在于:
(1)、connect函数在客户端使用,bind函数在 服务器端使用;
(2)、bind 的参数是自己的地址,而connect 的参数是对方的地址。
这里若是不了解,可以看我以前关于bind函数的文章:https://blog.csdn.net/shnhe/article/details/135187455?spm=1001.2014.3001.5501
3.例子
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#define SERVER_IP "192.168.0.1" // 服务器 IP 地址
#define SERVER_PORT 8000 // 服务器端口号
int main() {
int sockfd; // 套接字文件描述符
struct sockaddr_in server_addr; // 服务器地址结构体
char message[100]; // 用于存储要发送的消息的缓冲区
// 创建套接字
sockfd = socket(AF_INET, SOCK_STREAM, 0);
// 设置服务器地址信息
server_addr.sin_family = AF_INET; //IPV4
server_addr.sin_port = htons(SERVER_PORT); // 服务器端口号
inet_pton(AF_INET, SERVER_IP, &server_addr.sin_addr); // 服务器 IP 地址
// 客户端连接到服务器
connect(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr));
}
上面展示的代码就是connect 函数的一个简单使用过程,每一个代码段代表的意思都已注释,若有哪里表达的不清楚,欢迎大家提出,最后感谢的观看!
文章来源:https://blog.csdn.net/shnhe/article/details/135254458
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!