Sockets 如果我从来没有宣布Sinu addr是一个联盟,那它怎么会是一个联盟呢?
在socket编程中,如果我从未声明sin_addr是一个联合体,那么我的编译器怎么会知道sin_addr是一个联合体呢 server_address.sin_addr.s_addr=INADDR\u ANY 此外,在启动套接字时: 服务器地址中的结构sockaddr\u “sockaddr_in”是我的电脑能理解的命令吗?它是一个可以更改的结构吗Sockets 如果我从来没有宣布Sinu addr是一个联盟,那它怎么会是一个联盟呢?,sockets,Sockets,在socket编程中,如果我从未声明sin_addr是一个联合体,那么我的编译器怎么会知道sin_addr是一个联合体呢 server_address.sin_addr.s_addr=INADDR\u ANY 此外,在启动套接字时: 服务器地址中的结构sockaddr\u “sockaddr_in”是我的电脑能理解的命令吗?它是一个可以更改的结构吗 如果您能以新手能理解的方式解释,我将不胜感激。我编程不到一周。有了一个好的编译器,你可以跳转到声明它们的头文件中 在我的机器上的arpa/inet.
如果您能以新手能理解的方式解释,我将不胜感激。我编程不到一周。有了一个好的编译器,你可以跳转到声明它们的头文件中 在我的机器上的
arpa/inet.h
(ymmv)
typedef unsigned int\uu uint32\t;
#ifndef\u IN\u ADDR\T
#在地址中定义
#包括/*\u uint32\u t*/
在地址中键入def\uu uint32\u t;/*internet地址的基类型*/
#endif/*\u IN\u ADDR\T*/
/*
*互联网地址(基于历史原因的结构)
*/
地址中的结构{
in_addr_t s_addr;
};
/*
*internet地址整数中位的定义。
*在子网上,将地址分解为主机和网络部分
*是根据子网掩码完成的,而不是此处的掩码。
*/
#定义INADDR_ANY(u_int32_t)0x00000000
/*
*套接字地址,互联网风格。
*/
结构sockaddr\u in{
__uint8_t sinu len;
萨乌家族(sau family)t sin_家族;;
in_port_t sin_port;
结构输入地址sin地址;
char sin_zero[8];
};
你是从哪里读的吗?有了一个好的编译器,你可以跳转到声明它们的头文件中 在我的机器上的
arpa/inet.h
(ymmv)
typedef unsigned int\uu uint32\t;
#ifndef\u IN\u ADDR\T
#在地址中定义
#包括/*\u uint32\u t*/
在地址中键入def\uu uint32\u t;/*internet地址的基类型*/
#endif/*\u IN\u ADDR\T*/
/*
*互联网地址(基于历史原因的结构)
*/
地址中的结构{
in_addr_t s_addr;
};
/*
*internet地址整数中位的定义。
*在子网上,将地址分解为主机和网络部分
*是根据子网掩码完成的,而不是此处的掩码。
*/
#定义INADDR_ANY(u_int32_t)0x00000000
/*
*套接字地址,互联网风格。
*/
结构sockaddr\u in{
__uint8_t sinu len;
萨乌家族(sau family)t sin_家族;;
in_port_t sin_port;
结构输入地址sin地址;
char sin_zero[8];
};
你是从哪里读的吗?哦,所以当我在代码的开头包含一个库时,我实际上填充了很多信息,这有助于我现在更好地理解事情。感谢you@Theprocodernotreallyxd如果它对你有帮助,你可以点击左边和投票号码下面的勾号图标。哦,所以当我在我的代码开头包含一个库时,我实际上填充了很多信息,这有助于我现在更好地理解事情。感谢you@Theprocodernotreallyxd如果它对您有帮助,您可以单击左侧和投票号码下的勾号图标。
typedef unsigned int __uint32_t;
#ifndef _IN_ADDR_T
#define _IN_ADDR_T
#include <machine/types.h> /* __uint32_t */
typedef __uint32_t in_addr_t; /* base type for internet address */
#endif /* _IN_ADDR_T */
/*
* Internet address (a structure for historical reasons)
*/
struct in_addr {
in_addr_t s_addr;
};
/*
* Definitions of bits in internet address integers.
* On subnets, the decomposition of addresses to host and net parts
* is done according to subnet mask, not the masks here.
*/
#define INADDR_ANY (u_int32_t)0x00000000
/*
* Socket address, internet style.
*/
struct sockaddr_in {
__uint8_t sin_len;
sa_family_t sin_family;
in_port_t sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};