自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 问答 (1)
  • 收藏
  • 关注

原创 三分钟,让C++程序员学会Python

最近对机器学习很感兴趣,比如什么ai绘画啊,ai聊天啊,ai语音什么的,特别好玩,所以想很快很快地学会python。接下来分享一篇文章,这篇文章从C++程序员地视角讲解python,让我三分钟学会了,大家如果有兴趣就看看吧!

2023-12-07 21:27:12 512

原创 c++17: 利用string_view读取c风格字符串,避免拷贝

利用string_view读取c风格字符串,避免拷贝。

2023-04-12 17:13:41 203

原创 c++: vector存指针,析构是不会释放内存

【代码】c++: vector存指针,析构是不会释放内存。

2023-04-03 15:26:11 620

原创 C++类析构顺序与创建顺序相反(智能指针版),构造时先构造成员后构造自身

C++11智能指针版例子,类析构顺序与创建顺序相反,类构造时先构造成员后构造自身。

2023-03-28 22:14:45 216

原创 【ARP】win32操作arp缓存示例代码

下面是设置以太网卡arp缓存的代码,要看效果的话需要以太网连接。在以太网卡arp表格中,即可看到刚刚添加的arp一栏。运行上述代码后,打开控制台输入。

2023-03-24 09:50:28 305

原创 Powershell socket发送UDP数据,组帧示例

powershell利用socket发送udp数据

2023-03-11 22:34:58 507

转载 CMake中link_directories不起作用

link_directories不起作用

2023-02-09 20:20:46 254

原创 Sleep(1)不准,实际延时16ms

因为Sleep()函数会阻塞线程,系统会调度另一个线程执行,而windows下时间片大小大概是16ms,所以调用Sleep(1)后,在16毫秒后才会回来。

2022-12-30 14:34:24 2462 1

原创 【数据结构】环形缓冲区介绍,原理讲解+代码实现,嵌入式,内核

【数据结构】环形缓冲区介绍,原理讲解+代码实现【数据结构】环形缓冲区介绍,原理讲解+代码实现

2022-02-22 19:54:10 371

原创 c语言环形缓冲区的调试的无语一天。。

代码设计过程中遇到bug多的不说,先贴代码,重点关注at_queue_flush函数void at_queue_flush(at_queue_t at_q) { uint8_t* p_temp = at_q->buf; memset(at_q->buf, 0, at_q->size); memset(at_q, 0, sizeof(*at_q)); at_q->buf = p_temp;}这是个环形缓冲区(下面简称rb),flush使其清空函数,目的是使得缓冲区内

2021-11-25 04:38:03 214

转载 C语言中:在头文件中使用static定义变量意味着什么?

C语言中:在头文件中使用static定义变量意味着什么?.

2021-11-23 00:04:21 429

原创 2021-11-13 何为__weak? keil5中的修饰符

何为__weak? keil5中的修饰符先看一个源码/** * @brief Rx Transfer completed callback. * @param huart UART handle. * @retval None */__weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart){ /* Prevent unused argument(s) compilation warning */ UNUSE

2021-11-13 17:00:18 681

原创 c++ class和struct的区别是什么?

c++ class和struct的区别是什么?在c++中使用struct和class,定义类的唯一区别就是默认的访问权限–c++primer第五版没错, c++中class和struct几乎没有区别。要区分的仅仅是c语言的struct,c语言strcut只能定义变量,不能定义函数,c++和c语言的struct已经不是同一个东西了。。。...

2021-11-08 17:10:20 726

原创 2021-11-08 error: could not convert ‘{0}‘ from ‘<brace-enclosed initializer list>‘ to

could not convert ‘{0}’ from ‘《brace-enclosed initializer list>’ toc++程序,今日使用再平常不过的初始化列表,居然报错struct sales { char bookNo; unsigned units_sold = 0; double revenue = 0.0;};int main() { sales a = {0}; // print(cout, a);}错误信息cpp_

2021-11-08 16:28:18 8501 2

原创 linux下c程序出现: Illegal instruction

除0错引起 Illegal instruction刚刚出现了这个问题,经过排查,是除0错

2021-09-03 00:59:10 745

原创 “undefined reference to“ 问题解决方法 2021-08-09

“undefined reference to” 问题解决方法检查你有没有将头文件导入头文件路径include_directories(<include path>)检查你有没有将源文件导入源文件路径。aux_source_directory(<dir> <variable>)如 aux_source_directory(<dir> "*.c")不管是普通的cmake还是ide里面都要完成路径配置,举个例子,CMake,如果你的源码路径

2021-08-09 09:40:30 4034

原创 Rust:生命周期省略的三条规则

任何引用都有一个生命周期,并且需要为使用引用的函数或结构体指定生命周期参数。函数参数或方法参数中的生命周期被称为输入生命周期(input lifetime), 而返回的生命周期则被称为输出生命周期(output lifetime)。在没有显示标注的情况下,编译器目前使用了3种规则来计算引用的生命周期。第一条规则作用域输入生命周期,第二条和第三条规则作用于输出生命周期。当编译器检查完这3条规则后仍有无法计算出生命周期的引用时,编译器就会停止运行并抛出错误。这些规则不但对fn定义生效,也对impl代码块生效

2021-06-07 21:48:37 652

原创 Docker:使用dockerfile生成镜像错误:The system cannot find the path specified.

Docker生成错误: failed to read dockerfile: error from sender: walk Dockerfile: The system cannot find the path specified.生成命令如下PS D:\> docker build -t web/webapp ./Dockerfile结果:[+] Building 0.0s (1/2) => ERROR [internal] load build definition from

2021-05-11 11:05:55 8555 1

原创 Docker在WSL,windows下出现:Cannot connect to the Docker daemon at unix:///var/run/docker.sock问题

在wsl下执行Docker命令出现问题:Cannot connect to the Docker daemon at unix:///var/run/docker.sockIs the docker daemon running?出现这种问题的原因:你的windows docker没有正确配置,wsl下的docker与你的windows共用一个server引擎。解决方法如下步骤1.打开tcp端口允许wsl连接右下角任务栏右键单击docker打开设置点击这一栏,把他选上回到W

2021-05-08 15:57:58 6264 4

原创 Docker: 错误invalid reference format

windows cmd执行下列命令导入镜像时出现错误:invalid reference format其中test_ubuntu.tar为要导入的镜像,test为命名空间,ubuntu为镜像名,冒号后面的v0.1时tag命令docker import test_ubuntu.tar - test/ubuntu:v0.1错误:invalid reference format解决办法把导入命令中间的横线去掉就可以了命令docker import test_ubuntu.tar test/ubunt

2021-05-07 18:00:11 5086 1

原创 Vue3.0执行npm run build后 执行index.html出现白页 的解决办法

Vue3.0执行npm run build后 执行index.html出现白页,解决办法在工程目录下新建文件vue.config.js, 输入以下内容, 配置相对路径。module.exports = { publicPath: process.env.NODE_ENV === 'production' ? '/static/' : './'}上面这个之所以配成/static/,是因为我后台用了nginx做服务器,静态资源如css,js,img都放在(根目录)/static

2021-03-31 17:02:17 409

原创 未定义标识符“__float128“ --vs2019 cmake项目报错

这个__float128,浮点型的16字节数据,一看就很前卫,很高端,gcc默认是不支持的解决办法:添加语句使得gcc支持c++11在项目顶层的CMakeLists.txt和源程序内部的CMakeList.txt分别添加add_definitions(-std=c++11)语句,支持c++11即可效果如下当然我刚刚试了一下add_definitions(-std=c++17),发现有点问题,用c++11应该是比较合适的...

2021-03-20 22:09:12 6667

原创 数组名到底是什么

数组名是什么?我们在最开始学习c语言学到数组这一章节时,书本告诉我们一个数组的数组名代表这个数组“首元素的地址”。而当我们学到指针这一章节时,我们也自然而然会联想到,哎,数组就是一个“指针”!而这个指针指向的是该数组的首元素。那么数组名到底是什么?是值为地址的变量,是常量指针,还是他就是个常量呢?其实都不是数组名是一个代表地址的标签数组名是一个标签,类似goto的label,类似switch的case,它起到了记录数组在内存中的地址的作用。首先数组名不可能是变量,这是毋庸置疑的,那么为什么数组

2021-03-20 21:51:41 1961

原创 vs2019 WSL下调试提示Unable to open ‘libc-start.c‘ ‘libc-exit.c‘

vs2019 cmake项目 WSL下调试提示Unable to open ‘libc-start.c’ ‘libc-exit.c’当我们配置好cmake项目时,运行程序到达main()函数的结尾时,vs2019调试界面跳出 Unable to open ‘libc-start.c’,函数无法正常返回。原因是vs2019找不到glibc,虽然ubuntu2004子系统下面这个最基本的c运行库我们知道肯定是有,但是vs2019他自己貌似不会找,蛋疼。。解决办法是将linux下的glibc复制到wind

2021-03-20 21:46:03 549

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除