c中的缓冲区操作



新手问题。我正在尝试提取c中缓冲区的一部分。

char temp[50];
strcpy(temp,"local@192.168.1.123<>morestringshere");

我只想从这个缓冲区中提取IP并保存IP。重要的一点是,每个缓冲区可能包含不同长度的用户名,例如"local"。有什么简单的方法吗?谢谢你

可以这样使用sscanf

sscanf(temp,"%*[^@]%*c%[^<]",ip);

这将丢弃字符串直到'@',然后丢弃'@ ',并将字符串存储到字符数组 ip中,直到遇到'< ' '。因此,您将获得您的ip。

Sscanf应该能够轻松地提取ip

最新更新