一、MyIpAdd库简介
MyIpAdd库是一个纯C++库,可以用它获取我们的公网IP地址。其github地址为:https://github.com/felmur/MyIpAdd
二、下载编译MyIpAdd源码
从 https://github.com/felmur/MyIpAdd 下载MyIpAdd源码:

解压,进入源码目录,可以看到其目录结构如下:

编译:
bash
cmake . -DCMAKE_INSTALL_PREFIX=$(pwd)/install
make
make install
然后源码目录下会生成MyIpAdd的库文件libMyIpAdd.so:

三、MyIpAdd的使用例子
以C++为例,编写一个使用示例。main.cpp内容如下:
cpp
#include <iostream>
#include <myipadd.h>
using namespace std;
int main()
{
MyIpAdd * m = new MyIpAdd();
cout << "My public ip address is: '" << m->ip << "'" << endl;
return 0;
}
编译:
bash
g++ main.cpp -o main -g -IXXX/MyIpAdd-master -LXXX/MyIpAdd-master -lMyIpAdd
运行,效果如下。可以看到本机的公网ip被成功打印出来了:

该ip和通过百度查询到的公网ip一致:
