小编jos*_*501的帖子

检查给定字符串是否为有效 IP 地址的建议/帮助/更好的解决方案

老实说,我认为我编写的代码是垃圾,而且我不认为这是解决问题的最佳方法。我需要一些建议或改进来解决这个问题。我对编码还是新手。如果您能提供一些有关如何使用字符串和各种字符串函数的提示,我将不胜感激。

该字符串成为 IP 地址的条件:-

连接到互联网的设备的标识号。以点分四组表示法书写的 IPv4 地址由四个用句点分隔的 8 位整数组成。

换句话说,它是一个由四个数字组成的字符串,每个数字都在 0 到 255 之间(含 0 和 255),并带有“.”。每个数字之间的字符。所有数字都应不带前导零。

例子:

  1. 192.168.0.1 是有效的 IPv4 地址
  2. 255.255.255.255 是有效的 IPv4 地址
  3. 280.100.92.101 不是有效的 IPv4 地址,因为 280 太大,无法成为 8 位整数(最大的 8 位整数为 255)
  4. 255.100.81.160.172 不是有效的 IPv4 地址,因为它包含 5 个整数,而不是 4 个
  5. 1..0.1 不是有效的 IPv4 地址,因为格式不正确
  6. 17.233.00.131 和 17.233.01.131 不是有效的 IPv4 地址,因为它们包含前导零

这是我的代码(我知道它是垃圾并且没有任何意义):-

bool isIPv4Address(char * inputString) {
    int count = 0, period = 0;
    int k = 0, i = 0;
    int digit = …
Run Code Online (Sandbox Code Playgroud)

c function c-strings

0
推荐指数
1
解决办法
190
查看次数

标签 统计

c ×1

c-strings ×1

function ×1