簡體   English   中英

文件描述符和套接字文件描述符之間的差

[英]difference between file descriptor and socket file descriptor

我可以將打開調用返回的文件描述符綁定到套接字嗎?

我想做點什么,

 filefd = open("path",O_RDWR);

 ...

 bind (filefd, (struct sockaddr *) &servaddr, sizeof(servaddr));
 connfd = accept (filefd, (struct sockaddr *) &cliaddr, &clilen);

為什么accept調用返回-1?

從應用程序的角度來看,區別在於您如何創建和使用描述符。 一些系統調用可以采用任何類型的描述符,而其他系統調用則需要特定類型的描述符。

在你的情況下,如果你檢查錯誤, bind調用也會返回-1 當系統調用返回-1你應該檢查errno以查看出錯的地方。 您可以使用strerror獲取錯誤的可打印字符串,或使用perror直接打印它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM