这个是说把server变量所在地址的数据类型转换为sockaddr,sockaddr从字面上理解就是地址的意思。在API里,套接字不仅仅可以用于TCP/IP协议下,也可以用于NETBOIS等早期的协议。简单说就是多协议公用的标识地址的结构
/*步骤2:将socket和地址(包括ip,port)进行绑定*/ struct sockaddr_in serveraddr; memset(&serveraddr, 0, sizeof(serveraddr)); /*向地址中填入ip,port,internet地址簇类型*/ serveraddr.sin_family = AF_INET; //ipv4 serveraddr.sin_port = htons(atoi(argv[1])); //port serveraddr.sin_addr.s_...
server_addr.sin_addr.s_addr = inet_addr("172.16.32.36");
(struct sockaddr *)(&server_addr)这个是一个强制类型转换,就是将结构体&server_addr强制转换成struct sockaddr *类型。这个是c语言范畴的东西。因为我们只能创建和填充sockaddr_in和sockaddr_in6的结构体和里面的字段,但是很多socket参数只接受sockaddr类型的结构体,所以在这里要强制转换一下,就我记得...
7 #include <netinet/in.h> 8 #include <arpa/inet.h> 9 #include <unistd.h> 10 11 typedef struct _data { 12 int a; 13 char b[10]; 14 short c; 15 } Data; 16 17 int main() 18 { 19 int client_fd; 20 struct sockaddr_in server_addr; ...
structsockaddr_in server_addr;2122server_addr.sin_family =AF_INET;23server_addr.sin_port = htons(8000);24server_addr.sin_addr.s_addr = inet_addr("127.0.0.1");25bzero(&(server_addr.sin_zero),8);2627client_fd = socket(AF_INET, SOCK_STREAM,0);2829connect(client_fd, (structsockaddr ...
(struct sockaddr*)mysock 使用的例子 1#defineSERVER_PORT 80802intsockfd,err,newfd;3structsockaddr_in addr;4sockfd = socket(AF_INET, SOCK_STREAM,0);5if(sockfd <0){6perror("socket creation failed!\n");7return;8}9memset(&addr,0,sizeof(addr));10addr.sin_family =AF_INET;11addr.sin_po...
struct sockaddr_in clientaddr, serveraddr; listenfd = socket(AF_INET, SOCK_STREAM, 0);//生成socket文件描述符 setnonblocking(listenfd);//把socket设置为非阻塞方式 epfd=epoll_create(256);//生成用于处理accept的epoll专用的文件描述符 ev.data.fd=listenfd;//设置与要处理的事件相关的文件描述符 ...
struct sockaddr_in6 saddr6; }LIVE_NET_ADDRESS_SOCKADDR_IN; 除了void AddressString::init(struct in_addr addr)外, 将工程中所有struct in_addr 改为 LIVE_NET_ADDRESS 修改重点 在创建IPV6的socket后,需做如下设置(设置IPV6的socket只接收IPV6的数据) ...
struct sockaddr_in proxyaddr1, proxyaddr2; proxysd1 = socket(AF_INET, SOCK_STREAM, 0); proxysd2 = socket(AF_INET, SOCK_STREAM, 0); bzero(&proxyaddr1, sizeof(struct sockaddr_in)); proxyaddr1.sin_family = AF_INET; proxyaddr1.sin_port = htons(echoport1); ...