bad address
오류를 제공하는 TCP 클라이언트가 있습니다. 나는 코드의이 점과 관련이 있다고 생각하지만, 심지어 possibilites 모든 종류의 시도, 나는 그것이 작동되도록 할 수 없습니다클라이언트에서 읽을 때 소켓 오류가 발생합니다.
n=recv(sockfd,&buffer[0],1000,0);
버퍼는 다음과 같이 정의된다 std::vector<unsigned char> buffer;
내가 읽기 루프에 입력하기 전에 1000로 조정 것 . 내가 어떻게 고칠 수 있니?
----------- 편집
newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &clilen);
나는 clilen
선언으로 인한 오류 알고 있어요, 그래서 이것은 내가 그것을 할 방법은 다음과 같습니다
socklen_t clilen= sizeof(cli_addr);
---- 해결책 :
소켓을 만들기 전에 모드를 설정했는데, 이는 오작동을 일으켰습니다.
recv가 반환 된 후 n으로 설정되는 값은 무엇입니까? –
'accept()'호출에 소스를 게시하십시오. –
@JeremyFriesner'n7의 값은 -1입니다. @AndyBrown 코드가 게시되었습니다. 감사합니다. – Lomazo