0
서버 클라이언트 응용 프로그램을 만들 때 아래 코드에서 소켓 메시지를 열지 못했습니다. 아래 예제 코드를 참조하십시오. 소켓 오류에 대한 문서
if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0){
qDebug() << "ERROR netserver: binding to socket";
//more code here
}
sockfd = socket(AF_INET, SOCK_STREAM, 0);
if (sockfd < 0){
qDebug() << "ERROR netserver: opening socket";
//more code here
}
또는
은 내가getLastError()
를 사용하여 C++의 devs 알고있다 그러나 나는 소켓 종류의 아무것도 찾을 수 없습니다.
누구나 페이지/튜토리얼/위키를 알고 있습니까?
구글 (내 기억 창 유사한 명령을 가지고). Windows에서 WSA_GetLastError. Qt는 그것들을 감싸는 래퍼를 가질 수 있습니다. –
우선, Qt를 사용하는 이유는 [Qt 네트워크 클래스] (http://doc.qt.io/qt-5/qtnetwork-index.html)를 사용하지 않는 이유는 무엇입니까? 둘째, 하위 레벨 소켓 함수를 계속 사용한다면 오류를 얻는 방법은 플랫폼에 따라 다릅니다. POSIX 시스템 (Linux 나 macOS 같은)에서는'errno'를 체크 할 필요가 있습니다. Windows에서는'WSAGetLastError'를 사용해야합니다. 또한, POSIX 시스템을 사용하고 있다면 수동 페이지 *를 사용하십시오! (콘솔에서는 [man man'] (예 :'man bind')와 같은 명령을 사용하십시오. –
@ n.m. 내가 전에이 키워드들을 발견하지 못했기 때문에, 당신이 이것에 대해 어떻게 알 수 있느냐? – KGCybeX