详谈C++ socket网络编程实例(2)

 更新时间:2021年11月19日 10:35:19   作者:ufgnix0802  
这篇文章主要为大家介绍了C++ socket网络编程实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

功能

完成Cpp客户端简单功能,可收发数据。

Cpp服务端实例地址:【点击跳转

源码

#define _WINSOCK_DEPRECATED_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
//网络库文件
#include <winsock2.h>
//引入ws2_32.lib
#pragma comment(lib,"ws2_32.lib")
using std::cout;
using std::endl;
using std::cin;
int main()
{
	system("chcp 65001");
	WSADATA wsaData;
	if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
	{
		cout << "WSAStartUp error " << GetLastError() << endl;
		return 0;
	}
	//1、创建句柄
	SOCKET clientSocket = socket(AF_INET, SOCK_STREAM, 0);
	//2、连接服务端
	// connect(绑定的句柄, 服务端地址, 第二个参数的大小);
	SOCKADDR_IN ServerAddr;
	ServerAddr.sin_family = AF_INET;
	ServerAddr.sin_port = htons(7890);
	ServerAddr.sin_addr.s_addr = inet_addr("127.0.0.1");//点分十进制转化为十进制
	if (SOCKET_ERROR == connect(clientSocket, (sockaddr *)&ServerAddr, sizeof(SOCKADDR_IN)))
	{
		cout << "连接失败" << endl;
		return 0;
	}
	//3、接收发送数据
	while (true)
	{
		char buffer[1024] = { 0 };
		scanf("%s", buffer);
		send(clientSocket, buffer, strlen(buffer), 0);
		int nRecv = recv(clientSocket, buffer, 1024, 0);
		if (nRecv <= 0)
		{
			break;
		}
		printf("[%d]接收数据, %s\n", nRecv, buffer);
	}
	printf("断开连接\n");
	//4、关闭句柄
	return 0;
}

效果

效果图

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • C语言实现扫雷小游戏完整算法详解(附完整代码)

    C语言实现扫雷小游戏完整算法详解(附完整代码)

    扫雷游戏想必我们都有玩过,那么今天就用C语言来简单实现“扫雷”小游戏,这篇文章主要给大家介绍了关于C语言实现扫雷小游戏完整算法的相关资料,文中给出了完整的实例代码,需要的朋友可以参考下
    2022-06-06
  • C++ 超详细分析数据结构中的时间复杂度

    C++ 超详细分析数据结构中的时间复杂度

    时间复杂度一般指时间复杂性。 在计算机科学中,时间复杂性,又称时间复杂度,算法的时间复杂度是一个函数,它定性描述该算法的运行时间
    2022-03-03
  • c++ class中成员与分配内存的问题详解

    c++ class中成员与分配内存的问题详解

    很多人都知道C++类是由结构体发展得来的,所以他们的成员变量(C语言的结构体只有成员变量)的内存分配机制是一样的,下面这篇文章主要给大家介绍了关于c++ class中成员与分配内存问题的相关资料,需要的朋友可以参考下
    2021-10-10
  • C语言实现词法分析器

    C语言实现词法分析器

    这篇文章主要为大家详细介绍了C语言实现词法分析器,一个简单的词法分析程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • Linux中使用C语言实现基于UDP协议的Socket通信示例

    Linux中使用C语言实现基于UDP协议的Socket通信示例

    这篇文章主要介绍了Linux中使用C语言实现基于UDP协议的socket通信示例,服务器端与客户端的功能都非常基础,需要的朋友可以参考下
    2016-03-03
  • C语言中数据结构之链式基数排序

    C语言中数据结构之链式基数排序

    这篇文章主要介绍了C语言中数据结构之链式基数排序的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • C++实现旋转扫描仪的示例代码

    C++实现旋转扫描仪的示例代码

    旋转扫描仪(Rotating Scanner),也称为旋转扫描仪或圆形扫描仪,是一种用于获取图像和文档的设备,下面就跟随小编一起来学习一下如何使用C++实现旋转扫描仪功能吧
    2024-02-02
  • java实现任意四则运算表达式求值算法

    java实现任意四则运算表达式求值算法

    这篇文章主要介绍了java实现任意四则运算表达式求值算法,实例分析了基于java实现表达式四则运算求值的原理与技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • C++制作《游戏内存外挂》详解

    C++制作《游戏内存外挂》详解

    这篇文章主要介绍了C++制作《游戏内存外挂》详解,文中通过示例代码和图片介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • C语言实现俄罗斯方块小游戏

    C语言实现俄罗斯方块小游戏

    这篇文章主要为大家详细介绍了Linux下C语言实现俄罗斯方块小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07

最新评论