|
send(經socket傳送數據) |
相關函數
|
sendto,sendmsg,recv,recvfrom,socket |
表頭文件
|
#include<sys/types.h> #include<sys/socket.h> |
定義函數
|
int send(int s,const void * msg,int len,unsigned int falgs); |
函數說明
|
send()用來將數據由指定的socket 傳給對方主機。參數s爲已建立好連接的socket。參數msg指向欲連線的數據內容,參數len則爲數據長度。參數flags一般設0,其他數值定義如下 MSG_OOB 傳送的數據以out-of-band 送出。 MSG_DONTROUTE 取消路由表查詢 MSG_DONTWAIT 設置爲不可阻斷運作 MSG_NOSIGNAL 此動作不願被SIGPIPE 信號中斷。 |
返回值
|
成功則返回實際傳送出去的字符數,失敗返回-1。錯誤原因存於errno |
錯誤代碼
|
EBADF 參數s 非合法的socket處理代碼。 EFAULT 參數中有一指針指向無法存取的內存空間 ENOTSOCK 參數s爲一文件描述詞,非socket。 EINTR 被信號所中斷。 EAGAIN 此操作會令進程阻斷,但參數s的socket爲不可阻斷。 ENOBUFS 系統的緩衝內存不足 ENOMEM 核心內存不足 EINVAL 傳給系統調用的參數不正確。 |
send(經socket傳送數據)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.