Converting IP from C string to unsigned int?

2019-02-24 09:51发布

I've got a quick question; I have an IPv4 in a C string (say "192.168.0.1") and I want to convert it to an uint32_t. I'm sure there should be some function for that but I havn't found it. Any ideas?

标签: c windows linux ip
1条回答
我命由我不由天
2楼-- · 2019-02-24 10:40

The function is called inet_aton.

int inet_aton(const char *cp, struct in_addr *inp);

The structure in_addr is defined in <netinet/in.h> as:

typedef uint32_t in_addr_t;

struct in_addr {
    in_addr_t s_addr;
};

Of course you can also use the newer function inet_pton.

查看更多
登录 后发表回答