C++
文章平均质量分 50
yong1585855343
这个作者很懒,什么都没留下…
展开
-
dibbler-DHCPv6 的开源框架(C++ 实现)2
dibbler server 源码简单分析原创 2024-06-02 23:49:21 · 465 阅读 · 0 评论 -
记一道笔试题 getline() 引起的错误题
1. 起因今天(2021-08-15)做米哈游的笔试:题目:假设刚开始字符串为空,可以在字符串任意位置加上"ab",请你输入一个字符串,只含有'a'和'b',请你判断是不是能把一个空字符串变为目标字符串 s。可以输出"YES",不可以输出"NO"。第一行输入 t:样例数目之后t行: 每一行输入一个目标字符串 s。(1<=s.length<=100)eg:3aabbaNOaabbYESabYES本来思路对的,结果栽在了 getline 函数中。2. getline()原创 2021-08-15 23:05:10 · 774 阅读 · 0 评论 -
[编程题]万万没想到之聪明的编辑
1. 题目时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32M,其他语言64M我叫王大锤,是一家出版社的编辑。我负责校对投稿来的英文稿件,这份工作非常烦人,因为每天都要去修正无数的拼写错误。但是,优秀的人总能在平凡的工作中发现真理。我发现一个发现拼写错误的捷径:三个同样的字母连在一起,一定是拼写错误,去掉一个的就好啦:比如 helllo -> hello两对一样的字母(AABB型)连在一起,一定是拼写错误,去掉第二对的一个字母就好啦:比如 helloo -> he原创 2021-05-23 21:48:13 · 959 阅读 · 0 评论 -
编写一段代码使 CPU 利用率在 50%左右
1. CPU 的使用率要让 CPU 保持一直使用,即让它一直 取指执行 、取指执行 才能维持高的 CPU 使用率取指执行 操作: mov dword ptr [ebp-70h],0 jmp main+0D8h (0E09BC8h) mov eax,dword ptr [ebp-70h] add eax,1 mov dword ptr [ebp-70h],eax cmp原创 2021-05-02 14:41:42 · 5275 阅读 · 0 评论 -
Linux C 获取时间戳
1. 头文件 #include <sys/time.h>2. 代码#include <iostream>#include <sys/time.h>using namespace std;// 获取当前时间戳// 单位: 秒double now() { // 创建结构体 struct timeval tv = { 0, 0 }; // 调用函数,将当前的时间戳写入 结构体 tv 中 gettimeofday(&tv原创 2021-04-19 15:28:04 · 1609 阅读 · 0 评论 -
C++11 中线程同步的基本操作——互斥锁 lock()
1. 例子1. 不加 互斥锁#include <iostream>#include <thread>#include <mutex>volatile int nunber(0);std::mutex mtx;void thrfunc() { for (int i = 0; i < 1000000; i++) { // mtx.lock(); ++counter; //mtx.unlock();原创 2021-03-13 15:31:14 · 422 阅读 · 0 评论 -
笔记 C++11 auto 关键字和平常的显示定义一样不会消耗更多的时间
1. 代码#include <iostream>#include <string>using std::cin;using std::cout;using std::endl;using std::string;namespace chen101 { class Test { private: int value; public: Test() : value(99) { cout << this << " :原创 2021-03-12 15:55:13 · 240 阅读 · 0 评论 -
笔记 C++11 std::minmax_element() 的使用(寻找最小值和最大值)
0. 函数的声明可以看到:返回一个 std::pair<ForwardIt,ForwardIt> (pair 对)template< class ForwardIt >std::pair<ForwardIt,ForwardIt> minmax_element( ForwardIt first, ForwardIt last );1. 寻找最小值和最大值使用顾名思义,从函数名看,minmax_element,先是 min,再 max,所以,返回的原创 2021-03-12 10:54:45 · 7137 阅读 · 1 评论 -
笔记 C++ thread::detach() 后 main() 退出后,派生线程不再运行
1. 环境VS20192. 代码做了一个 detach() 测试,做一个写文件的函数,使用 Sleep() 函数,当主线程退出后,子线程才运行写文件函数的操作。结果发现,这个函数并没有执行。#include <iostream>#include <thread>#include <Windows.h>#include <fstream>using namespace std;// 写入文件做测试// 输出文件到// 打开并原创 2021-03-05 20:06:24 · 4094 阅读 · 10 评论 -
笔记 VS2019 C++ 通过 C API 连接 mysql8.0
1. 安装 MySQL我的安装在 C:\Program Files\MySQL\MySQL Server 8.0就不介绍了2. 连接 MySQLVS2019 改为 Debug, x64打开 工程 – 属性 – VC++目录 – 包含目录 添加 MySQL 的 include,比如: C:\Program Files\MySQL\MySQL Server 8.0\include打开 工程 – 属性 – VC++目录 – 库目录 添加 MySQL 的 lib,比如: C:原创 2021-02-26 10:58:09 · 651 阅读 · 0 评论 -
笔记 C socket 实现简单的套接字编程(客户端和客户端连接)
0. 套接字网上很多说套接字名称包括:IP:port在 《Windows Socket 网络编程》 Bob Quinn 著的一书中,套接字名称包括:1. IP2. port3. protocol (协议)1. 图示流程说明:刚学习 windows socket 编程,能搞懂图中的函数怎么用及其参数的意义算是入门了。2. 库 <winsock2.h>#include <iostream>#include <winsock2.h>#原创 2021-01-13 10:13:52 · 2052 阅读 · 1 评论 -
笔记 字符集类型的错误 C2440 “static_cast”- 无法从“const char [13]”转换为“LPCTSTR”
1. 源码server.cpp#include <iostream>#include <winsock2.h>#include <ws2tcpip.h>#include <string>#include <thread>#include <vector>#pragma comment (lib, "Ws2_32.lib")#define IP_ADDRESS "192.168.56.1"#define DEFAU原创 2021-01-07 10:12:39 · 1238 阅读 · 1 评论 -
笔记 C++智能指针 auto_ptr 及其自己简单地实现 auto_ptr 和 shared_ptr
1. 传统指针需要时时刻刻记住 new 了后要 delelte#include <iostream>using namespace std;template <typename T>class complex {private: T re; T im;public: complex(const T r, const T i): re(r), im(i) { cout << "init complex" << endl; }原创 2020-12-15 10:53:02 · 160 阅读 · 0 评论 -
C: Implicit declaration of function ‘read’ and ‘write’ ; did you mean ‘fwrite’?
1.While working on an socket-based application, we received the following warnings from the compiler:当在基于 socket 的应用工作时,我们接收到下面编译器发出的警告implicit declaration of function 'read'implicit declaration of function 'write'read 和 write 是 声明在 unistd.h 头文件的函数翻译 2020-12-14 17:20:02 · 3988 阅读 · 3 评论 -
笔记:C++ 中 NumCpp 的安装
1. 介绍C++ 中 NumCpp 和 Python 中的 numpy 作用类似。2.1 boost 库安装(NumCpp 库依赖于 boost 库,建议版本不需要太新,也不要太旧)2.1.1 安装包Web: https://www.boost.org/users/history/version_1_70_0.htmlVersion: https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.7z2.1.2原创 2020-11-09 17:03:39 · 3573 阅读 · 8 评论 -
02. C++ 线程、进程、并发视频学习笔记之 thread 库中 join()、detach()、joinable() 的函数、类、lamda 表达式的使用
学习目标:学习 B 站 C++ 多线程学习第二节学习内容:学习时间:2020.10.19学习产出:2.1程序运行起来,生成一个进程,该进程所属的主线程开始自动运行;当主线程从main()函数返回,则整个进程执行完毕主线程从main()开始执行,那么我们自己创建的线程,也需要从一个函数开始运行(初始函数),一旦这个函数运行完毕,线程也结束运行在例子中,我们使用 myPrint() 作为初始函数。整个进程是否执行完毕的标志是:主线程是否执行完,如果主线程执翻译 2020-10-19 16:26:40 · 166 阅读 · 0 评论 -
01. C++ 线程、进程、并发视频学习笔记之基本概念
学习时间: 2020.10.15内容概述(目录)视频学习网址:https://www.bilibili.com/video/BV1Yb411L7ak\\1、并发、进程、线程的基本概念和综述(必须掌握)1.1 并发两个或者更多的任务(独立的活动)同时发生(进行):一个程序同时执行多个独立的任务;以往计算机,单核 CPU(中央处理器):某一个时刻只能执行一个任务,由操作系统调度,每秒钟进行多次所谓的 “任务切换”。并发的假象(不是真正的并发),切换(上下文切换)时要保存变量.翻译 2020-10-15 10:54:22 · 127 阅读 · 0 评论