【问题标题】:Use inet_pton for IP address conversion from a text file not working使用 inet_pton 从文本文件转换 IP 地址不起作用
【发布时间】:2021-11-24 09:24:57
【问题描述】:

我正在尝试使用 inet_pton 函数转换文本文件中包含的一系列 IP 地址。我需要从文本文件中获取 ip 地址字符串并作为 src 地址参数传递给 inet_pton()。在我检查 inet_pton() 后返回 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");
       }

【问题讨论】:

    标签: c parameters network-programming ip-address c-strings


    【解决方案1】:

    我不知道该功能,但您似乎需要删除换行符。例如

    while(fgets(line, sizeof(line), whitelist) ) {
        line[ strcspn( line, "\n" ) ] = '\0';
        puts( line);
    }
    

    【讨论】:

    • 是的!这就是问题非常感谢你
    • @my3589 完全没有。不客气。:)
    猜你喜欢
    • 2021-07-30
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    • 1970-01-01
    • 2012-12-01
    相关资源
    最近更新 更多