使用 inet_pton 从文本文件转换 IP 地址无效
Use inet_pton for IP address conversion from a text file not working
我正在尝试使用 inet_pton 函数转换文本文件中包含的一系列 IP 地址。我需要从文本文件中获取 ip 地址字符串并将其作为 src 地址参数传递给 inet_pton()。在我检查 inet_pton() return 0 而不是 1 之后。
拜托,我将不胜感激
whitelist= fopen("/home/...../whitlist.txt","r");
while(fgets(line, sizeof(line), whitelist) ) {
printf("%s", line);
}
if(inet_pton (AF_INET,line, &a)==1){
printf("1");
} else if(inet_pton (AF_INET,line, &a)==0){
printf("0\n");
} else {
printf("-1");
}
我不知道这个功能,但你似乎需要删除换行符。例如
while(fgets(line, sizeof(line), whitelist) ) {
line[ strcspn( line, "\n" ) ] = '[=10=]';
puts( line);
}
我正在尝试使用 inet_pton 函数转换文本文件中包含的一系列 IP 地址。我需要从文本文件中获取 ip 地址字符串并将其作为 src 地址参数传递给 inet_pton()。在我检查 inet_pton() return 0 而不是 1 之后。 拜托,我将不胜感激
whitelist= fopen("/home/...../whitlist.txt","r");
while(fgets(line, sizeof(line), whitelist) ) {
printf("%s", line);
}
if(inet_pton (AF_INET,line, &a)==1){
printf("1");
} else if(inet_pton (AF_INET,line, &a)==0){
printf("0\n");
} else {
printf("-1");
}
我不知道这个功能,但你似乎需要删除换行符。例如
while(fgets(line, sizeof(line), whitelist) ) {
line[ strcspn( line, "\n" ) ] = '[=10=]';
puts( line);
}