你如何从 C 中的一串字符中解析出一个 IP 地址?

How would you parse an IP address from a string of characters in C?

我有一个变量保存这些字符集:

char recvBuff[1024] = "OK lastname,firstname 127.0.0.1";

我正在尝试从整个字符串中解析 127.0.0.1 IP 地址并将其分配给另一个变量。如何从字符串中解析此 IP 地址? (我不需要单独的 127、0、0 和 1。我需要“127.0.0.1”作为整个字符串。

您可以使用strtok()strtok_r()函数来分隔字符串。

      char *strtok(char *str, const char *delim);

      char *strtok_r(char *str, const char *delim, char **saveptr);

在分离字符串之前您可以对字符串进行备份,因为它会影响原始字符串。