-1
난 그냥 리눅스에서 API를 연결에서 오류가있어. 리눅스에서 소켓 연결
나는 연결에 성공하면 '연결', 내가 반환 값 "3"가 오류 코드입니다있어 0을 반환합니다 알고? 아니면 모르는 뭔가가 있습니까?
connect(sock, (struct sockaddr*)&serv_addr, sizeof(serv_addr));
나는 양말에서 3을 받았다.
난 그냥 리눅스에서 API를 연결에서 오류가있어. 리눅스에서 소켓 연결
나는 연결에 성공하면 '연결', 내가 반환 값 "3"가 오류 코드입니다있어 0을 반환합니다 알고? 아니면 모르는 뭔가가 있습니까?
connect(sock, (struct sockaddr*)&serv_addr, sizeof(serv_addr));
나는 양말에서 3을 받았다.
connect()
의 반환 값을 얻으려면 할당의 왼쪽으로 사용되는 변수를 사용하는 것이 가장 간단합니다.
int result = connect(sock, (struct sockaddr*)&serv_addr, sizeof(serv_addr));
printf("connect returned: %d\n", result);
sock
socket()
에 대한 호출의 결과로 파일 기술자 번호가 할당되었다. 새 파일 설명자를 리턴하는 대부분의 UNIX API는 사용 가능한 최저 디스크립터를 리턴합니다. 프로그램은 일반적으로 설명자
0
,
1
및
2
(STDIN, STDOUT 및 STDERR의 경우)로 시작합니다. 따라서
socket()
이
3
을 반환한다는 것은 예상치 못한 일이 아닙니다.
(일반적 및 POSIX) 리눅스 시스템에서
코드하십시오를 참조하십시오. 'connect()'는 0 또는 -1 만 반환합니다. – EJP
죄송합니다. 내 코드를 잊어 버렸습니다. – user3773632
이 코드는 반환 코드를 저장하지 않습니다. 3이라는 걸 어떻게 알았지? 그리고 '양말'은 무엇을 의미합니까? – EJP