代码之家  ›  专栏  ›  技术社区  ›  Nelson Mongare

套接字生成错误

  •  0
  • Nelson Mongare  · 技术社区  · 7 年前

    我正在尝试构建一个简单的套接字。

    #include<stdio.h>
    #include<winsock2.h>
    #include<ws2tcpip.h>
    
    int getaddrinfo(const char *node,
                    const char *service,
                    const struct addrinfo *hints,
                    struct addrinfo **res);
    
    int main(int argc, char *argv[])
    {
        WSADATA wsa;
        SOCKET a;
        printf("Initializing...");
        if(WSAStartup(MAKEWORD(2,2),&wsa)!=0);
            printf("Failed, Error:%d",WSAGetLastError());
        if((a=socket(AF_INET,SOCK_STREAM,0))==INVALID_SOCKET);
            printf("Failed, Error:",WSAGetLastError());
        return 0;
    }
    

    2 回复  |  直到 7 年前
        1
  •  0
  •   Mike    7 年前

    未定义的引用错误意味着您尚未将套接字库链接到项目。头文件告诉它函数的外观,但库文件实际上完成了这项工作。请参阅 this answer 了解如何操作的详细信息。

        2
  •  0
  •   dbush    7 年前

    您需要链接ws2_32.lib以获取winsock函数。