vs2010編寫的簡單socket聊天

2021-10-24 14:34:07 字數 2687 閱讀 1784

伺服器端

// server.cpp : 定義控制台應用程式的入口點。

//mfc用來了解win的作業系統的核心

#include

"stdafx.h"

#include

//引入標頭檔案

#pragma comment(lib,"ws2_32.lib")

//載入動態庫

int_tmain

(int argc, _tchar* ar**)

printf

("請求版本成功!\n");

//2,建立套接字,手機把聲音變成電訊號,socket也是乙個作用

socket serversocket =

socket

(af_inet,sock_stream,ipproto_tcp);if

(serversocket == invalid_socket)

printf

("建立socket成功!\n");

//3,建立協議位址族

sockaddr_in addr=

;addr.sin_family = af_inet;

//1,協議

addr.sin_addr.s_un.s_addr =

inet_addr

("127.0.0.1");

//2,主機

addr.sin_port =

htons

(10087);

//3,網路埠 應用

//4,繫結

int r=

bind

(serversocket,

(sockaddr*

)&addr,

sizeof addr);if

(r==-1

)printf

("bind成功!\n");

//5,監聽(為了安全,通話可能會被錄音)

//tcp是安全的,所以要監聽,指定最大監聽數量,同樣也判斷一下,是否在這一步是否會失敗 ,

// 怎麼監聽,監聽這個埠就可以了,同時給他乙個數字,指定最大監聽數量

r=listen

(serversocket,10)

;if(r==-1

)printf

("listen成功!");

//6,等待客戶端連線

sockaddr_in caddr =

;int len =

sizeof caddr;

socket clientsocket =

accept

(serversocket,

(sockaddr*

)&caddr,

&len)

;//如果這個埠是個錯誤的埠, socket_error也就是-1,-1代表常規的錯誤

if(clientsocket == socket_error)

printf

("有客戶端連線進來了:%s\n"

,inet_ntoa

(caddr.sin_addr));

//從caddr裡面拿ip位址,從整數轉成字串,要不然是看不懂的

//通訊

char buff[

255]

;while(1

)}while(1

);return0;

}

客戶端

// client.cpp : 定義控制台應用程式的入口點。

#include

"stdafx.h"

#include

//引入標頭檔案

#pragma comment(lib,"ws2_32.lib")

//載入動態庫

int_tmain

(int argc, _tchar* ar**)

printf

("請求版本成功!\n");

//2,建立套接字,手機把聲音變成電訊號,socket也是乙個作用

socket serversocket =

socket

(af_inet,sock_stream,ipproto_tcp);if

(serversocket == invalid_socket)

printf

("建立socket成功!\n");

//3,獲取協議位址族

sockaddr_in addr=

;addr.sin_family = af_inet;

//1,協議

addr.sin_addr.s_un.s_addr =

inet_addr

("127.0.0.1");

//2,主機

addr.sin_port =

htons

(10087);

//3,網路埠 應用

//4,連線伺服器

int r =

connect

(serversocket,

(sockaddr*

)&addr,

sizeof addr);if

(r==-1

)printf

("連線伺服器成功");

//通訊

char buff[

255]

;while(1

)}while(1

);return0;

}

VS2010用Winform編寫 Excel程式

如題,遇到問題 未能載入檔案或程式集 office,version 7.0.3300.0,culture neutral,publickeytoken b03f5f7f11d50a3a 或它的某乙個依賴項。系統找不到指定的檔案。在網上搜了很久,都說的版本不同問題,但沒有給出明確的解決資訊 1.安裝 ...

VS2010編寫的MFC串列埠程式

剛剛學習mfc串列埠通訊,除錯了乙個串列埠通訊的程式,實現pc機與微控制器的串列埠通訊,能夠正常地收發資料。部分源 如下 開啟串列埠函式 void ccommtestdlg onbnclickedbuttonopen m mscomm.put commport 1 選擇com1 m mscomm.p...

如何提高VS2010的效能,VS2010不再卡

教大家幾個技巧可以稍微讓你覺得它沒那麼卡!一 vs2010選項視覺體驗設定 工具 選項 環境 視覺體驗的勾選都去掉。不解釋,你懂得。不過還是建議開啟硬體加速 二 禁用intellisense 工具 選項 文字編輯器 c c 高階 禁用intellisense設為true 這個功能很好用。相較於vis...