根据所给列表判断ip的归属地

如所给字符串列表为 :

"127.0.0.1 127.0.0.11 山东 潍坊",
"127.0.0.12 127.0.1.4 山东 11",
"128.0.1.1 128.0.3.11 山东 12"

测试ip为127.0.0.9,则应返回其归属地。

示例代码如下:

#include <iostream>
#include <vector>
#include <string>
using namespace std;class ip {private:vector<int> duan;public:ip(string s);bool operator >(const ip& ip1) const;bool operator <(const ip& ip1) const;
};inline bool isIn(vector<string> temp, string test) {string s1 = temp[0];string s2 = temp[1];ip ip1(s1);ip ip2(s2);ip ip3(test);if (ip3 > ip1 && ip3 < ip2) {return true;}return false;
}int main() {vector<string> slist = {"127.0.0.1 127.0.0.11 山东 潍坊","127.0.0.12 127.0.1.4 山东 11","128.0.1.1 128.0.3.11 山东 12"};string test = "127.0.1.2";for (string temp: slist) {int count = 0;int j = 0;int left = 0;vector<string> rand;while (j < temp.length()&&count<2) {if (temp[j] == ' ') {rand.push_back(temp.substr(left, j-left));count++;left = j + 1;}j++;}if (isIn(rand, test)) {cout << temp.substr(left) << endl;}}return 0;
}ip::ip(string s)
{this->duan.clear();int j = 0;int left = 0;while (j < s.length()) {if (s[j] == '.') {this->duan.push_back(stoi(s.substr(left, j - left)));left = j+1;}j++;}this->duan.push_back(stoi(s.substr(left)));}bool ip::operator>(const ip& ip1) const
{for (int i = 0; i < this->duan.size(); i++) {if (this->duan[i]>ip1.duan[i]) {return true;}else if (this->duan[i] < ip1.duan[i]) {return false;}}return false;
}bool ip::operator<(const ip& ip1) const
{for (int i = 0; i < this->duan.size(); i++) {if(this->duan[i] <ip1.duan[i]){return true;}else if (this->duan[i] >ip1.duan[i]) {return false;}}return false;
}

如有建议,请在评论区指正。

判断ip归属地 c++相关推荐

  1. 使用腾讯IP查询-判断IP归属地-Vic's blog

    使用IP获取地理位置信息 最近博客刚写了一个地理信息统计的功能,想看看来访我博客的网友都来自哪些地区,这要用到IP地理信息查询接口,网上有很多大厂(如腾讯,淘宝,搜狐等等)或地理信息机构开放的IP地理 ...

  2. 【实战篇】| 模拟 20 万数据快速查询 IP 归属地

    点击"小詹学Python",选择"置顶"公众号 重磅干货,第一时间送达 本文转载自一个不甘平凡的码农 这篇文章主要深入数据结构与算法在解决实际问题怎么运用和分析 ...

  3. Shell 命令行统计 apache 网站日志访问IP以及IP归属地

    Shell 命令行统计 apache 网站日志访问IP以及IP归属地 我的一个站点用 apache 服务跑着,积攒了很多的日志.我想用 shell 看看有哪些人访问过我的站点,并且他来自哪里. 因为日 ...

  4. 使用 ip2region 获取用户的 IP 归属地

    目录 1. ip2region 简介 2. 使用步骤 2.1 下载资源 2.2 引入依赖 2.3 编写工具类 2.3.1 获取 IP 地址 2.3.2 根据 IP 地址获取 IP 归属地 2.3.3 ...

  5. 简单介绍python3判断IP地址的方法

    这篇文章主要为大家详细介绍了python3判断IP地址的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了python3判断IP地址的具体代码,供 ...

  6. Shell脚本判断IP是否合法性(多种方法)

    运维角度来说,写shell脚本经常会遇到判断输入的值是否合法,比如IP.邮件地址等.那么,根据自身写脚本中总结的判断IP合法性脚本分享给网友,遇到时能有所参考. 思路:IP由四位数字组成,以点分割,每 ...

  7. python3 判断ip有效性 是否是内网ip

    1.判断ip有效性 import ipaddressdef check_ip_valid(ip):try:ipaddress.ip_address(ip.strip())return Trueexce ...

  8. golang 获取公网ip 内网ip 检测ip类型 校验ip区间 ip地址string和int转换 判断ip地区国家运营商

    目录 简要简介net包 什么是外网IP和内网IP? 获取公网ip 获取本地ip 判断是否是公网ip ip地址string转int ip地址int转string 判断ip地址区间 通过淘宝接口根据公网i ...

  9. 上海php黑名单,php判断ip黑名单程序代码实例

    这篇文章主要介绍了php判断ip黑名单程序代码实例,需要的朋友可以参考下 学校的新闻系统要求有些新闻只开放校内ip浏览,于是重写了一个代码来实现此功能,实现后的结果是,只要把允许访问的ip列入ip.t ...

最新文章

  1. oracle exec 和 call 区别
  2. Java基础篇:异常处理
  3. 这38个小技巧告诉你如何快速学习MySQL数据库
  4. 在HTML中英文换行问题
  5. XPath函数——字符串函数
  6. 浅析“字典--NSDirctionary”理论
  7. socket模块--TCP和UDP协议下的基础网络通话
  8. [NOI2018]你的名字(68pts)
  9. redismanager 获取不到yml中的密码_恋爱物语APP:在城市的孤独中,获取真爱密码...
  10. 动态DP详解(转载)
  11. 网络安全工程师必备浏览器插件
  12. otsu阈值分割算法原理_局部阈值分割算法总结
  13. 卡巴斯基提示:“手机骷髅”病毒引发新一轮安全隐患
  14. 网页精美动效/动画制作 按钮鼠标悬浮动效基础 01《炫彩网页 iVX 无代码动效/动画制作》
  15. 科研画图都用什么软件?
  16. FBEC2020专访 | 贾瑶琪:Substrate可以在Web3.0中找出更多有意思的创新应用
  17. python八卦阴阳_GitHub - meetingFuture/godwill: 周易八卦,占一卦,知来世,肖今生。...
  18. 2021最新爬取百度关键词时出现,百度安全验证,解决方法
  19. dp在约会上是什么意思_饭圈用语dp是什么梗 饭圈用语dp是什么意思
  20. PS 2020一些使用技巧

热门文章

  1. .csd文件怎么读?--CMU_MOSI_Opinion_Labels.csd
  2. Ubuntu 16.04 LTS安装XDM下载神器
  3. IE8——focus函数不好用
  4. 【实用】Visio制作坐标轴
  5. C++ STL之命名空间、函数模板、类模板
  6. mysql_backups
  7. 漏电继电器LLJ-100FS
  8. linux 串口 lsr 0xc9,linux 串口驱动(三)
  9. Centos7 源码安装 Apache
  10. Touch screen