我正在使用我找到的一些代码,并试图理解其中的for 循环逻辑。
看起来 for 循环没有被使用并且它总是会中断。所以我不明白从 getaddrinfo() 返回什么样的信息会导致它再次循环并检查某些内容?
问题:基本上这个 for 循环想要完成什么?在我看来,它只是检查列表不为空,因为从来没有发生循环。
tcp_ctx* tcp_new_ctx(INT family, CHAR *host, CHAR *port) {
struct addrinfo *list = NULL;
struct addrinfo *e = NULL;
struct addrinfo hints;
tcp_ctx *c = NULL;
WSADATA wsa;
INT on = 1;
WSAStartup(MAKEWORD(2, 0), &wsa);
ZeroMemory(&hints, sizeof(hints));
hints.ai_family = family;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = IPPROTO_TCP;
// try to resolve network address for host
//list contains linked list of addrinfo structs containing information on the host
if (getaddrinfo(host, port, &hints, …Run Code Online (Sandbox Code Playgroud) 为了让这更容易。我如何打印到 QPlainTextEdit 列表
['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']
Run Code Online (Sandbox Code Playgroud)
每个单词使用不同的颜色?