linux中 c語言的 socket程式設計案例

2021-10-19 03:00:54 字數 1476 閱讀 3218

監聽端:

1. 建立 socket

2. 建立並初始化 監聽端sockaddr

3. 繫結監聽端 sockaddr

4. 設定監聽個數

5. 建立傳送端sockaddr

6. 接受傳送端(沒有傳送端連線,會阻塞)

7. 開始 接收傳送資料

8. 關閉連線

傳送端:

1. 建立 socket

2. 建立並初始化 監聽端sockaddr

3. 連線 監聽端socket

4. 開始 接收傳送資料

5. 關閉連線

不同之處:

監聽端有 繫結,監聽,接受操作

傳送端有 連線操作

監聽端**:

socketservice.c

#include

#include

#include

#include

#include

#include

#define maxline 128

#define serv_port 8001

intmain

(int argc,

char

*ar**)

else

}// 8. 關閉連線

close

(socketfd)

;return0;

}

傳送端**:

socketclient.c

#include

#include

#include

#include

#include

#include

#include

#define maxline 128

#define serv_port 8001

// 讀函式

void

*readpthread

(void

*arg)

else

}close

(socketfd)

;return

(void*)

0;}int

main

(int argc,

char

* ar**)

close

(socketfd)

;return0;

}

[注]:由於 pthread庫 不是 linux的標準庫,直接編譯回報錯,在後面加上 -lpthread即可

gcc .

/socketclient.c -o socketclient -lpthread

Linux下經常使用的C C 開源Socket庫

1.linux socket programming in c 2.ace ace採用ace os適配層遮蔽各種不同的 複雜繁瑣的作業系統api。ace是乙個大型的中介軟體產品,20萬行左右,過於巨集大,一堆的設計模式,架構了一層又一層。它龐大 複雜。適合大型專案。開源 免費。不依賴第三方庫。使用的...

linux中c語言errno的使用

在linux中使用c語言程式設計時,errno是個很有用的動動。他可以把最後一次呼叫c的方法的錯誤 保留。但是如果最後一次成功的呼叫c的方法,errno不會改變。因此,只有在c語言函式返回值異常時,再檢測errno。errno會返回乙個數字,每個數字代表乙個錯誤型別。詳細的可以檢視標頭檔案。usr ...

linux中c語言errno的使用

在linux中使用c語言程式設計時,errno是個很有用的動動。他可以把最後一次呼叫c的方法的錯誤 保留。但是如果最後一次成功的呼叫c的方法,errno不會改變。因此,只有在c語言函式返回值異常時,再檢測errno。errno會返回乙個數字,每個數字代表乙個錯誤型別。詳細的可以檢視標頭檔案。usr ...