2012-05-05 30 views
0

我如何發送接受的套接字的功能參數這裏是代碼:我如何發送接受插座的功能作爲參數

//accept connection 
accept_sock = accept(sock_con,(struct sockaddr *)&info,&sizeof_accept); 

//Create a new process 
int pid = fork(); 
if (pid == 0) 
    { 

    //close the socket 
    close(sock_con); 
    request_handle(accept_sock); ** here i wanna send the socket to that function* 
    }  

什麼是宣佈這個功能時,該插座的數據類型?

function request_handle(what is the datatype pointed here){ 

} 
+1

你是怎麼解決申報'accept_sock'不知道它的類型?你在'accept'的手冊頁上讀到了什麼? – Mat

+0

他可能會複製代碼,甚至沒有機會閱讀它。 –

+0

這只是我的第一次編程經驗,我只是嘗試通過練習來學習 – kingasmk

回答

1

accept_sock是一個int。請參閱手冊頁accept

INT接受(INT的sockfd,結構sockaddr *地址中,socklen_t * addrlen中);

0
function request_handle(int socket); 

套接字文件描述符與在內核打開每個插座進行區分,就像文件描述符是整數,打開的文件進行區分得到相應的一個插座相關的整數,有的說一切都在一個Unix是一個文件,這是因爲整數相關或文件描述符的概念。

0

插座通常是一個intunsigned int(取決於實現),這將是由插座DLL用來唯一標識你指的套接字句柄時,你將這個作爲參數傳遞給sendrecv等。

所以,你只需要做到這一點:

function request_handle(int socketHandle){ 

}