C#搭建Socket服务器与客户端,助你快速入门(极简版)

一、服务器的搭建

新建一个C#控制台应用,用于搭建服务器。

// 设置接收字节的容器,容量大小为1024个字节,客户端发来的字节都存在这里
static byte[] buffer = new byte[1024];

static void Main(string[] args)
{
    // 建立Tcp服务器socket,名为server,用于监听客户端连接
    Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

    // 配置端口。“127.0.0.1”是本机IP地址,也可在命令提示符(黑窗口)输入ipconfig,查看ipv4地址
    // 7777是端口号、可在1025~65535随便选。
    EndPoint endpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7777);

    // 绑定端口
    server.Bind(endpoint);

    // server开始监听客户端连接。10,是指服务器能够同时允许10个客户端连接,可写其他
    server.Listen(10);
    Console.WriteLine("服务器开启成功,开始监听~");

    // 当有客户端接入时,新建名为serverManager的Socket,用于接收客户端的消息。
    // 前面的server是接收客户端消息用,而这里的serverManager是接收客户端消息用,各司其职。
    Socket serverManager = server.Accept();
    
    // 返回收到的字节的实际长度
    int length = serverManager.Receive(buffer);
    
    // 用Encoding.UTF8.Getstring(),将收到的实际长度的字节转化为string类型
    string mes = Encoding.UTF8.GetString(buffer, 0, length);
    Console.WriteLine("收到了" + length + "个字节,内容为:" + mes);
    
    Console.ReadKey();
}

注:serverManager除了接收消息,也可以发送消息。基本除了监听,其他活它都干。

二、客户端的搭建

再建一个C#控制台应用,用于搭建客户端。

static void Main(string[] args)
{
    // 建立Tcp客户端socket,名为client,用于监听客户端连接,和建立服务器的Socket一样的配方
    Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

    // 配置端口,“127.0.0.1”、7777,均和服务器保持一致
    EndPoint endpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7777);

    // 接入端口
    client.Connect(endpoint);

    string content = "这里是客户端";

    // 用Encoding.UTF8.GetBytes(),将要发送的内容转化为字节
    byte[] data = Encoding.UTF8.GetBytes(content);

    // 发送字节
    client.Send(data);
}

搭建好之后,先运行服务器端,

再运行客户端。

一个简单的服务器和客户端就搭建完成。

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
### 回答1: 对于“c”的问题,没有提供足够的信息来理解问题的具体含义。"C" 可以代表很多事物,例如: 1. "C" 可以指代罗马数字中的100,也可以代表摄氏度的单位。 2. "C" 还可以是编程语言中的一种,C语言是一种广泛使用的编程语言,用于开发各种应用程序。 3. 此外, "C" 也可以是一个姓氏的首字母,或者是某个组织或品牌的缩写。 如果提供具体的背景信息,我将非常乐意提供更详细和准确的回答。 ### 回答2: c是英语字母表中的第三个字母,同时也是数学中常用的常数之一。在计算机领域,C是一种高级编程语言,广泛应用于系统软件开发、嵌入式系统、游戏开发等领域。 C语言由贝尔实验室的丹尼斯·里奇在20世纪70年代初期设计开发,其设计目标是实现底层的机器控制,并在硬件和软件之间建立桥梁。 C语言的特点是简洁、灵活、易于理解和掌握。它具有良好的可移植性,可以在不同的操作系统平台上运行,也可以在不同的计算机架构中编译和执行。此外,C语言还采用了面向过程的编程思想,使得程序结构清晰,逻辑性强。 C语言的应用面非常广泛。很多操作系统的核心部分,如Unix、Linux等都是使用C语言来编写的。此外,很多著名的开源软件,如MySQL、Apache等也是用C语言编写的。C语言也是学习其他高级编程语言的基础,如C++、Java等,因为这些语言大多是基于C语言进行扩展和改进。 总之,C语言作为一种通用的编程语言,具有广泛的应用领域和深远的影响,它为计算机科学的发展做出了重要的贡献。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

learninger_lt7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值