//
// created by 冰糖葫蘆的夏天 on 16-7-15.
// server_udp.c
#include
#include
#include
#include
#define listenport 12345 //定義監聽埠號
#define listenip "127.0.0.1" //定義監聽ip位址
int main()
printf("[+] udp監聽埠: %d\n", listenport);
printf("[+] udp監聽ip: %s\n", listenip);
memset(&addr_server, 0, sizeof(addr_server)); //清空服務端套接字
memset(&addr_client, 0, sizeof(addr_client)); //清空客戶端套接字
addr_server.sin_family = af_inet; //設定位址型別
addr_server.sin_port = htons(listenport); //設定服務端監聽埠
addr_server.sin_addr.s_addr = inet_addr(listenip); //設定服務端監聽ip位址
addr_client_len = sizeof(addr_client); //計算客戶端結構體大小
if (0 == bind(mysock, (const
struct sockaddr *) &addr_server, sizeof(addr_server)))
else
while (1)
return0;}
------------------------我是分割線--------------------------
//// created by 冰糖葫蘆的夏天 on 16-7-15.
//client_udp.c
#include
#include
#include
#include
#define remoteip "127.0.0.1" //要傳送的ip位址
#define remoteport 12345 //要傳送的埠
int main()
addr.sin_family = af_inet; //結構體中填入位址型別
addr.sin_port = htons(remoteport); //結構體中填入要傳送到的埠
addr.sin_addr.s_addr = inet_addr(remoteip); //結構體中填入要傳送到ip位址
while (1)
}return0;}
/*注:在recvfrom函式中
int recvfrom(int s, void *buf, int len, unsigned int flags, struct sockaddr *from,int *fromlen)
s: 建立的socket編號
buf: 接收到的資訊儲存在哪塊記憶體裡
len: 儲存接收資訊的記憶體的大小,通過sizeof()獲取
flags: 一般設定為0,可選引數為: msg_oob: 傳出的資料以out-of-band送出
msg_dontroute: 取消路由表查詢
msg_dontwait: 設定為不可阻斷
msg_nosignal: 此傳輸不願被sigpipe訊號中斷
fromlen: 上面這個結構體的大小,通過sizeof獲取,注意:sizeof獲取到的是int,需要先賦乙個變數,然後對這個變數取位址
也可以在recvfrom函式的sockaddr裡填null,此時第5個引數將被忽略,不會出現bad address錯誤,但是,將無法顯示資料**位址與埠
*/
Linux下的UDP連線程式設計
udp是無連線不可靠的ip協議,和tcp有所不同。udp伺服器呼叫socket bind listen 完成套接字初始化後,呼叫accept 阻塞等待處於監聽埠的狀態。udp客戶端呼叫socket 初始化後,呼叫connect 傳送syn欄位並阻塞等待應答。客戶端如果一直與服務端連線,服務端退出後重...
linux下C語言連線mysql
linux下c語言連線mysql include include include mysql mysql void doquery m res mysql store result mysql if m res null while m field mysql fetch field m res i...
Linux下C語言連線MySQL
include include include int main if mysql query mysql,select from test num fields mysql num fields result while row mysql fetch row result for i 0 i編譯...