当前位置:网站首页>socket inet_ pton() inet_ Ntop() function (a new network address translation function, which converts the expression format and numerical format to each other. The old ones are inet_aton(), INET_ ntoa
socket inet_ pton() inet_ Ntop() function (a new network address translation function, which converts the expression format and numerical format to each other. The old ones are inet_aton(), INET_ ntoa
2022-07-04 07:11:00 【Dontla】
New network address translation function :
Remove the buffer from CP At the beginning Internet The representation format of the number is converted to binary network format , And the interface type AF The results are stored from BUF In the start buffer .
The function of this code is similar , What's the difference ?
serv_addr.sin_addr.s_addr = inet_addr("192.168.1.116");
take Internet Host address from CP The numbers and dot symbols in are converted into binary data in network byte order .
New network address translation function inet_pton() and inet_ntop()
These two functions follow IPv6 Functions that appear , about IPv4 Address and IPv6 All addresses apply , Function p and n Each represents the expression (presentation) And numbers (numeric). The expression format of address (presentation) Usually ASCII character string , The numerical format (numeric) Is the binary value stored in the socket address structure .
#include <arpa/inet.h>
int inet_pton(int family, const char *strptr, void *addrptr); // Will be dotted decimal ip The address is converted into a numeric format for network transmission
Return value : If successful 1, If the input is not a valid expression 0, In case of error -1
const char * inet_ntop(int family, const void *addrptr, char *strptr, size_t len); // Convert numerical format to dot decimal ip Address format
Return value : If successful, a pointer to the structure , In case of error NULL
(1) Of these two functions family The parameter can be either AF_INET(ipv4) It can also be AF_INET6(ipv6). If , Take an unsupported address family as family Parameters , Both functions return an error , And will errno Set as EAFNOSUPPORT.
(2) The first function attempts to convert from strptr The string that the pointer points to , And pass addrptr The pointer holds the binary result , If successful, the return value is 1, Otherwise, if specified family The input string is not a valid expression format , So the return value is zero 0.
(3)inet_ntop Do the opposite conversion , From the numerical format (addrptr) Convert to expression (strptr).inet_ntop Functional strptr Parameter cannot be a null pointer . The caller must allocate memory for the target storage unit and specify its size , When the call succeeds , This pointer is the return value of the function .len Parameter is the size of the target storage unit , To prevent the function from overflowing its caller's buffer . If len Too small , Not enough to hold expression results , Then return a null pointer , Juxtaposition as errno by ENOSPC.
Reference article 1:inet_pton() and inet_ntop() Function details
Reference article 2:IP Address translation function :inet_pton
边栏推荐
- What is the use of cloud redis? How to use cloud redis?
- Selenium driver ie common problem solving message: currently focused window has been closed
- Boast about Devops
- Pangu open source: multi support and promotion, the wave of chip industry
- There is no Chinese prompt below when inputting text in win10 Microsoft Pinyin input method
- [MySQL transaction]
- Master-slave replication principle of MySQL database
- Bottom problem of figure
- Recursive Fusion and Deformable Spatiotemporal Attention for Video Compression Artifact Reduction
- [FreeRTOS] FreeRTOS learning notes (7) - handwritten FreeRTOS two-way linked list / source code analysis
猜你喜欢
What is the use of cloud redis? How to use cloud redis?
Technical experts from large factories: common thinking models in architecture design
Summary of MySQL common judgment functions!! Have you used it
[MySQL transaction]
Google Chrome Portable Google Chrome browser portable version official website download method
Bottom problem of figure
NLP literature reading summary
leetcode825. Age appropriate friends
win10微软拼音输入法输入文字时候下方不出现中文提示
[thread pool]
随机推荐
Paddleocr prompt error: can not import AVX core while this file exists: xxx\paddle\fluid\core_ avx
Vulhub vulnerability recurrence 76_ XXL-JOB
MySQL 45 lecture learning notes (XIV) count (*)
Recursive Fusion and Deformable Spatiotemporal Attention for Video Compression Artifact Reduction
Selection (022) - what is the output of the following code?
测试用例的设计
[FPGA tutorial case 8] design and implementation of frequency divider based on Verilog
Solution of running crash caused by node error
2022年6月小结
About how idea sets up shortcut key sets
MySQL 45 lecture learning notes (VI) global lock
How notepad++ counts words
《剑指Offer》第2版——力扣刷题
Status of the thread
How does the recv of TCP socket receive messages of specified length?
Selection (023) - what are the three stages of event propagation?
【GF(q)+LDPC】基于二值图GF(q)域的规则LDPC编译码设计与matlab仿真
Knowledge payment applet dream vending machine V2
电脑通过Putty远程连接树莓派
Enter the year, month, and determine the number of days