C语言--常用函数

1、sscanf,格式化输入,可以用于ip地址向无符号长整型转换,较为方便和简单

unsigned long ip2long(char *ip)
{
    unsigned long a, b, c, d; //必须使用ul,否则左移24位会越界
    sscanf(ip, "%lu.%lu.%lu.%lu", &a, &b, &c, &d);
    return ((a << 24) | (b << 16) | (c << 8) | (d));
}

2、sprintf,把格式化的数据写入某个字符串中,即发送格式化输出到 string 所指向的字符串;如下面代码是把长整型数字转换成字符串形式输出

void long2ip(unsigned long ipNum, int post, char *buf)
{
    unsigned long tmp[4] = {0};
    for (int i = 0; i < 4; i++)
    {
        tmp[i] = ipNum & 0xff;
        ipNum >>= 8;
    }
    sprintf(buf, "%lu.%lu.%lu.%lu/%d", tmp[3], tmp[2], tmp[1], tmp[0], post);
    return;
}

 

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读