判断字符串是否是正确的IP格式的C语言函数

2023-11-12

来自:http://blog.csdn.net/shanzhizi


一个用于识别字符串是否是IPV4C语言函数,保留下来供大家参考使用:

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <errno.h>
#include <stdio.h>

int if_a_string_is_a_valid_ipv4_address(const char *str)
{
    struct in_addr addr;
    int ret;
    volatile int local_errno;

    errno = 0;
    ret = inet_pton(AF_INET, str, &addr);
    local_errno = errno;
    if (ret > 0)
        fprintf(stderr, "\"%s\" is a valid IPv4 address\n", str);
    else if (ret < 0)
        fprintf(stderr, "EAFNOSUPPORT: %s\n", strerror(local_errno));
    else 
        fprintf(stderr, "\"%s\" is not a valid IPv4 address\n", str);

    return ret;
}

int main()
{
	char *pIP = "192.168.0.22";
	char *pNotIP ="192.168.0.256";
	
	if_a_string_is_a_valid_ipv4_address(pIP);
	if_a_string_is_a_valid_ipv4_address(pNotIP);
	
	return 0;
}


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

判断字符串是否是正确的IP格式的C语言函数 的相关文章

随机推荐

  • ssh免密登录配置

    本次测试需要服务器己安装好 ssh keygen和ssh copy id 安装方式如下 安装ssh keygen root localhost yum install y ssh keygen 安装ssh copy id root loca
  • 线性代数知识点整理

    目录 前言 一 行列式 1 行列式求值 2 七大性质 3 特殊行列式的值 二 矩阵及其运算 1 行列向量 2 可逆矩阵 3 常用性质 4 伴随矩阵 三 矩阵的初等变换和线性方程组 1 初等变换 2 矩阵的秩 定义 特性 求秩 3 齐次与非齐
  • Java Swing-JScrollPane,JTable

    同事要一个和Access功能类似的软件 但是要满足她提出的各种要求 她知道我是做软件的 所以让我给写一个 想想她的提的需求很容易实现 所以就答应了 因为Access的功能她就用来管理表格 日常的很多表格很多 都需要进行电子档的登记 此软件肯
  • 【倒计时2天】CCIG文档图像智能分析与处理论坛开启直播预约,共探智能文档处理前沿技术

    文档是人们在日常生活 工作中产生的信息的重要载体 各领域从业者几乎每天都要与金融票据 商业规划 财务报表 会议记录 合同 简历 采购订单等文档 打交道 让计算机具备阅读 理解和解释这些文档图像的能力 在智能金融 智能办公 电子商务等许多领域
  • [深入研究4G/5G/6G专题-59]: 以太网交换平台软件如何升级成基站平台软件

    前言 本文从全局的视角阐述把一个通用的Linux平台软件升级成基站平台软件 一 基站的硬件 1 1 设备硬件 1 2 SOC芯片
  • 不用看网课就能学到python的文章(第三天)

    紧接着上一篇不用看网课就能学到python的文章 第二天 Why does it work的博客 CSDN博客 如果说到语句 那我们应该了解一些一些python python最具特色的就是使用缩进来表示代码块 不需要使用大括号 行与缩进 i
  • spring mvc中log4j的配置与使用

    原文地址 http rockelixir iteye com blog 1902352 如果使用spring插件创建一个spring template project 它会默认带log4j 只要改下log4j的配置就可以使用了 如果自己创建
  • ppt地图分布图一块一块的怎么做_没想到地图还能这么用,简直是PPT图表神器!...

    本期导读 如何让你的PPT看起来高大上 本文教你一个鲜为人知的视觉化技巧 利用电子地图 制作PPT图表 即便你不懂PS 不懂设计 也能轻松上手 PPT地图图表的妙用 三种PPT地图的创建方法 本文是2019年3月推送的第20篇干货 计159
  • 全国电赛K题江苏省二等奖----王澳刚

    2017年TI杯江苏省大学生电子设计大赛 题目 单相用电器分析监测装置 题目编号 K题 参赛队编号 ZJ022 参赛队学校 江苏科技大学 参赛队学生 王澳刚 雷松泽 匡正 指导老师 王宝忠 李垣江 二0一七年八月 摘 要 本系统以STM32
  • TCP:为什么是三次握手

    定义 HTTP是基于传输层的TCP协议 而TCP是一个端到端的面向连接的协议 所谓的端到端可以理解为进程到进程之间的通信 所以HTTP在开始传输之前 首先需要建立TCP连接 而TCP连接的过程需要所谓的 三次握手 在TCP三次握手之后 建立
  • C++从入门到放弃之:C++ 左值引用与右值引用详解

    C 从入门到放弃 C 引用 1 左值引用 2 万能引用 常引用 3 右值引用 4 引用型函数返回值 5 引用和指针 6 函数传参传递指针和引用的区别 总结 C 引用 1 左值引用 定义 引用即别名 某个变量的别名 对引用的操作就等同于对变量
  • idea导入java文件_怎么在idea中导入Java文件并运行文件

    怎么在idea中导入Java文件并运行文件 发布时间 2020 06 22 20 58 37 来源 亿速云 阅读 926 作者 元一 这篇文章将为大家详细讲解有关怎么在idea中导入Java文件并运行文件 小编觉得挺实用的 因此分享给大家做
  • Golang-循环变量作用域针对那些数据类型会出现问题

    一 原因 在 Go 中 循环变量的作用域是整个 for 循环语句块 因此 循环变量在 for 循环语句块中的代码都是可见的 但是 当循环变量的值被用于闭包 协程或者使用指针类型的数据结构时 会出现一些问题 这是因为循环变量的值在每一次迭代中
  • Add One

    Add One 题意 给一个数n 有m次操作 每次操作把n的每一位加一 例如1912操作一次后变成21023 问操作m次后 数字的位数 思路 可以初始化0 9每一个数字操作k次后的位数f i k k lt m 然后把n的每一位操作后的长度加
  • LeetCode-Python-1584. 连接所有点的最小费用(MST)

    给你一个points 数组 表示 2D 平面上的一些点 其中 points i xi yi 连接点 xi yi 和点 xj yj 的费用为它们之间的 曼哈顿距离 xi xj yi yj 其中 val 表示 val 的绝对值 请你返回将所有点
  • Java-网络编程

    网络通信 1 两台及以上设备之间通过网络实现数据传输 2 将数据通过网络从一台设备传送到另一台设备 3 java net包下提供了一系列的类或者接口使用来实现网络通信 网络 1 两台或者多台设备通过一定物理设备连接起来构成了网络 2 根据覆
  • 【Android】-- 编辑框EditText、焦点变更监视器、文本变化监视器

    一 编辑框EditText 编辑框用于接收键盘输入的文字 由文本视图派生而来 除了TextView已有的各种属性和方法 EditText还支持下列XML属性 inputType 指定输入的文本类型 输入类型的取值说明如下表 若同时使用多种文
  • GOTURN——Learning to Track at 100 FPS with Deep Regression Networks

    文章的题目叫 Learning to Track at 100 FPS with Deep Regression Networks 算法简称 GOTURN Generic Object Tracking Using Regression N
  • 在企业当中搭建samba服务器

    目录 项目简介 项目分析 项目实施 1 修改防火墙设置 2 安装samba并启动samba服务 3 建立共享目录 4 创建访问账号 5 修改配置文件 6 测试配置文件 7 测试Samba服务器 1 完成只有行政部的用户可以上传和删除comp
  • 判断字符串是否是正确的IP格式的C语言函数

    来自 http blog csdn net shanzhizi 一个用于识别字符串是否是IPV4的C语言函数 保留下来供大家参考使用 include