自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (23)
  • 收藏
  • 关注

原创 C语言攻破面试指针运算及数组

有c语言基础就从老外的第3节开始看。指针指针强类型指针是强类型的,也就是说,需要知道这个指针是存的什么类型的地址,虽然就是一个8位的数来表示整数。但是解引用的时候,需要知道要几个字节算一个数据。同时,还和大端模式,小端模式有关系。指针运算指针运算,p++ p+5等表达式,到底加了几个字节呢?p++: p的地址增加了 1 * sizeof(*p)个字节p + 5: p的地址增加了5 * sizeof(*p)个字节void*泛型指针,万能指针。int* p;char* q

2021-08-30 16:26:09 13

原创 操作系统(八)死锁

文章目录1 什么是死锁2 资源分配图3 死锁处理方法4 死锁的4个必要条件死锁防止prevent避免死锁tutorial1 什么是死锁进程之间互相等待资源的释放。2 资源分配图3 死锁处理方法4 死锁的4个必要条件死锁防止prevent在代码运行前,防止产生死锁的四个必要条件。分别针对4个条件论述:避免死锁在代码运行时,检测是否存在死锁等待的环,如果存在则进行处理。tutorial...

2021-08-29 17:52:51 18

原创 SOFT3410-系统编程中的C语言

文章目录Core Dump/Segmentation Fault1 指针1.1 悬浮指针Dangling pointers1.2 野指针wild pointer1.3 指针和数组1.3.1 指针和算法内存2.1 函数调用栈2.2 堆2.2.1 void *malloc(size_t size);2.2.2 void *calloc(size_t num, size_t size);2.2.3 void free(void *ptr);2.2.4 内存泄露2.2.5 void *realloc(void *p

2021-08-28 12:10:55 51

原创 c/c++中的Core Dump/Segmentation Fault

错误发生的原因是:想要读写到“不属于你的内存”。主要有六种出错的方式:修改某字符串字面量,而不是某字符串变量,例如"adfsd"(试图写只读区域)获取已经释放了的内存(编译器不允许)数组越界(极其常见)scanf()错误使用(将输入给到了一个无效的内存)栈溢出(递归太多,函数局部数组定义太长等)对一个没有初始化的指针进行解引用操作。(int * p; int c = *p;)...

2021-08-27 20:41:49 21

原创 SOFT3410-软件开发中的并发性

Some Linux concepts you will need• In addition to ssh, scp, editing (such as vim, nano), compiling,moving files, /tmp file system……• Understanding PATH• Setting environment variables in general, e.g.,LD_LIBRARY_PATH• Writing shell scripts• Shell st.

2021-08-27 17:50:58 32

原创 c++中std操作

文章目录stdstd

2021-08-20 16:25:19 27

原创 c++智能指针

raw pointer原指针原指针就是正常的指针:type * pointer_name = & variable_name;智能指针一种包括堆区原指针的对象,用来更好管理对象的生命周期。C++11最佳实践Also note the use of ‘nullptr’ in C++ instead of NULL...

2021-08-20 16:25:04 9

原创 c++匿名lambda函数(c++11)

文章目录格式应用参考链接格式Lambda表达式完整的声明格式如下:[capture list] (params list) mutable exception-> return type { function body }各项具体含义如下capture list:捕获外部变量列表params list:形参列表mutable指示符:用来说用是否可以修改捕获的变量exception:异常设定return type:返回类型function body:函数体应用该代码测试按照元音

2021-08-19 21:30:38 11

原创 操作系统(七)合作线程同步----未完待续,有点难理解。所以要结合代码继续理解。

文章目录0 前言1 背景multiprogrammingrace condition竞争条件同步The critical section problem2 概念3 tutorial4 lab0 前言协同的进程可以影响或被系统中执行的其他进程所影响。协作进程可以直接共享逻辑地址空间(即代码和数据),也可以只允许通过文件或消息共享数据。前一种情况是通过使用线程实现的,本系列文章之前讨论过。但是,对共享数据的并发访问可能会导致数据不一致。在本章中,我们将讨论各种机制,以确保共享逻辑地址空间的协作进程有序执行

2021-08-19 12:48:59 8

原创 51nod算法训练

文章目录1096 距离之和最小1116 K进制下的大数1096 距离之和最小#include<bits/stdc++.h>using namespace std;long long v[10005];int main () { int n; cin >> n; for (int i = 1; i <= n; i++) cin >> v[i]; //sort(v + 1, v+n + 1);// 排序 1~n的位置 // 快速排序,归并排序。

2021-08-18 20:18:50 11

原创 c++ - new和delete

文章目录c++中的对象创建和释放c++中的对象c++的所有数据,包括基本变量如int,都是对象。而Java的基本数据类型不是对象。对象是和某类型有关的区域。有3种方法可以让c++中的对象具有超过了它的定义范围的生命周期。通过复制从函数中返回它(可能有限制)通过引用从函数中返回它(不好,见下面的幻灯片)将其作为堆资源从函数中返回(今天的课)也就是new和delete创建和释放需要在堆中创建,然后手动释放。使用new创建,会调用该对象的构造函数。所以用法类似使用类创建对象。加一个

2021-08-16 18:27:47 9

原创 c++左值和右值

文章目录左值lvalue右值rvalue左值右值的转换左值引用右值引用原文地址左值lvalue有具体地址,可以通过地址访问的对象。(以后可能都不应该说变量了。应该c++中的所有变量都是对象,连int都有构造函数的)原本所有的左值都可以被赋值(=左边),自从有了const,出现了不可修改的左值。右值rvalue不是左值的对象都是右值。可以认为右值不在内存中具有地址,暂时储存在寄存器中。左值右值的转换左值可以转右值:int a = 1; // a is an lvalueint b

2021-08-16 17:31:46 65

原创 操作系统(六)实验

任务简介有5个涉及到多线程的问题,选其2进行解决。选择用 C 或 C++ 来实现。但是,低级操作系统调用必须用普通的C语言。学习成果多线程的debug同步,线程调度,抢占非抢占式调度算法注意事项不允许使用占用cpu的等待操作。应该使用condition variable,当满足某种操作的时候再去睡眠或者苏醒和其他线程通信。在操作添加元素到数组,加锁等操作时,对每一步都输出当前的操作信息。程序干了什么尽量线程间分享尽量少的内容。避免出现死锁或者竞争条件随机数的随机种子,保证是固定的生

2021-08-16 08:36:39 37

原创 操作系统(五)CPU进程和线程调度

文章目录简介概念算法tutoriallabpthread数量和任务分析exit(EXIT_SUCCESS);和pthread_exit(NULL)open mp简介在Linux上,进程和线程是一个概念。进程就是内核级的线程。进程调度和线程调度经常互换使用概念算法tutoriallabpthread数量和任务分析运行代码的命令:$ gcc -o pt thread-1.c -pthread -Wallc代码:#include <pthread.h>#include &l

2021-08-15 23:52:08 39

原创 操作系统(四)线程

线程是cpu执行的最小单位,包括线程ID,程序计数器,寄存器集和栈。和其他同属于一个进程的其他线程共享操作系统资源:代码区,数据区打开文件和信号。学习之后的目的 :描述操作系统如何管理计算资源(如CPU和内存),描述现代操作系统设计中使用的基本原则。解释现代操作系统的目标和功能,解释内存层次结构和性价比,解释现代操作系统的操作、实现和性能,以及每种操作系统对于复杂用户应用程序的相对优点和适用性。比较和对比操作系统中用于抢占式和非抢占式任务调度的常用算法,如优先级、性能比较和公平共享方案。

2021-08-14 11:37:27 12

原创 c++运算符重载

文章目录友元函数重载:复合赋值Operator pairings自增自减运算符的重载c++20,spaceship operatorNote:Only create an overload if your type has a single, obviousmeaning to an operator友元函数一种全局函数,可以在类里声明,其他地方定义。或者在类里定义生命。但是这个友元函数,不是类的成员。用的时候直接用,但是可以接触类的所有权限的变量。对于,重载操作符来说,可以把一些重载体函数定义

2021-08-13 17:12:15 172 3

原创 c++异常

文章目录错误类型异常框架原则:捕获为常引用rethrow(嵌套异常)Exception safety levelsNo-throw guaranteeStrong exception safetyWeak exception safetyNo exception safetynoexcept specifier错误类型异常为了处理运行时错误和逻辑错误#include <exception> for std::exception object#include <stdexcept&

2021-08-13 16:47:27 19

原创 c++- Const class objects and member functions

文章目录常对象常函数最佳实践常对象首先可以定义一个类,在使用这个类的时候,创建一个常对象。那么这个对象的任何变量都不可以改变(在调用构造函数之后)。任何想要改变对象内属性的操作,都将引来编译错误。(包括直接改变public 变量以及调用改变变量的函数)。class Something{public: int m_value {}; Something(): m_value{0} { } void setValue(int value) { m_value = val

2021-08-13 12:53:28 15

原创 c++类构造函数

文章目录委托构造函数delegating constructorexplicit委托构造函数delegating constructor其实最好使用默认参数值default value,代替重载以及委托构造函数。委托构造函数可以减少代码量#include <string>class dummy {public:explicit dummy(int const& i) : s_{"Hello world"}, val_{i} {}explicit dummy() : du

2021-08-13 12:39:12 15

原创 c++类和结构体的区别

实际上c++的类,最后也是转为结构体实现的。主要区别:All members of a struct are public by defaultAll members of a class are private by default在什么情况下使用:We use structs only when we want a simple type with little or no methodsand direct access to the data members (as a matter o

2021-08-13 11:55:48 9

原创 c++ - This指针

一般情况下,不用This指针,而是加后缀suffix_来表示某变量是类内部变量.#include <iostream>class myclass {public:myclass(int i) {i_ = i;}int getval() {return i_;}private:int i_;};int main() {auto mc = myclass{1};std::cout << mc.getval() << "\n";}改变后:#

2021-08-13 11:52:27 4

原创 C++命名空间(namespace)

域scope一个变量的域就是程序的某个部分可以使用这个变量,离开这个区域,变量就消亡了。用{}来标识命名空间namespace命名空间就是有名字的域,里面按照正常情况定义了变量函数类等等。命名空间主要是为了防止命名冲突。嵌套命名空间nestedstd::string::nopsUnnamed namespacesc语言static的函数只能在本文件中使用,c++可以利用unnamed namespace实现该功能。namespace word_ladder { namespace

2021-08-13 11:48:19 16

原创 C++ - STL

文章目录c++style 迭代vectormap迭代器流迭代器(按空格读取文件的数据)容器分为顺序容器(没排序,按顺序放的)还有Ordered Containersc++style 迭代#include <array>#include <iostream>int main() {// C-style. Don't do this// int ages[3] = { 18, 19, 20 };// for (int i = 0; i < 3; ++i) {//

2021-08-12 16:15:52 9

原创 c++高级特性

和硬件相关的数据类型Remember that C++ runs directly on hardware, which means thevalue of some types may differ depending on the system.An example of a library you can include to display these are below:#include <iostream>#include <limits>int main()

2021-08-12 12:14:13 16

原创 51nod题解

文章目录1246 罐子和硬币1246 罐子和硬币#include<bits/stdc++.h>using namespace std;int main() { int n,k,c; while (cin >> n >> k >>c) { int x = k / n;// 每个罐子分至少x个! int a = k % n; // a个罐子会比其他罐子多1个, x + 1 int y = n - a;//y个罐子中有x个, //if

2021-08-11 21:14:26 4

原创 c++不该使用的c的特性

cppreference.com很好的参考网站不该使用:cplusplus.com

2021-08-07 22:00:25 7

STM32信号发生器.rar

利用stm32单片机设计的信号发生器,能够发出三角波,正弦波以及方波等等。有源代码、Altium desiger设计的原理图以及PCB图。是课程设计的时候自己做的。但是没有proteus的仿真图

2020-03-19

基于MSP430实现的简易信号发生器报告.doc

基于MSP430G2211的简易信号发生器设计报告。内含原理图图片以及代码片段。共计5000字,26页。内容详实,有硬件PCb图以及实物图不过没有proteus仿真截图。

2020-03-19

MSP432小车iar代码.zip

MSP432小车iar代码,反射式光电传感器寻迹模块的工作原理,寻迹模块的电路图以及在以MSP432单片机为控制核心的基础上如何实现智能寻迹小车的自动寻迹行驶。

2019-12-01

Qt_CMake_Demo.zip

压缩包里是一个CMake工程,只分享一下如何用CMake构建整个工程,同时能够使用Qt的各种库。通过已经写好的一个Demo来展示最少的步骤。在CMakeLists.txt中添加Qt的模块,仍然使用CMake构建工程。 详细内容可以看博客介绍:https://blog.csdn.net/weixin_42089190/article/details/106420556

2020-05-29

PCtoLCD的取模软件

本人用该软件实现了在oled上对于汉字以及bmp图片的取模。这个软件的功能相当强大,但笔者不才,现在只在oled上进行了测试。它支持列行式、共阴等选择

2018-06-28

基于FPGA的红色标志物双目测距系统.doc

自己做的机器视觉大作业,13页,6000字,word版本。基于FPGA的红色标志物双目测距系统。公式用mathtype打的,有参考文献等等。

2019-12-01

物料搬运机器人所有资料

物料搬运机器人所有资料。不过少了一些视频。2018年时候的资料。 博客介绍在这里 https://blog.csdn.net/weixin_42089190/article/details/83964375

2020-10-20

51单片机最小系统板PCB

自己画的PCB图,51单片机的最小系统,可以直接打印腐蚀做板。用来节省大家的时间。不过,用的时候可以把排针引脚调节得大一些,不然打孔的时候,就打得大一些。

2018-06-07

2016年江苏省电子设计大赛-自动寻迹小车设计报告

2016年江苏省电子设计大赛-自动寻迹小车的详细设计报告。

2018-04-27

适用于2016年省赛电子设计竞赛自动循迹小车STM32F103所有程序

该程序用于省赛寻迹小车,完成了所有功能,供大家参考。本人首发,此前没有出现在网上。也欢迎大家看我的博客文章,上面详细介绍了用MSP430G2553实现功能的全过程。

2018-06-03

基于G2553的OLED屏显示工程

该压缩包包含6个库函数以及一个main函数,自己添加到工程里,就可以实现OLED的汉字,字符以及bmp图片显示。使用了I2C协议

2018-06-28

msvc2013 - OpenCV 3 Compile From Source and Qt.docx

使用MSVC2013 32bit编译opencv3.4.0源码,在Qt5.6.3上运行代码: https://blog.csdn.net/weixin_42089190/article/details/121131873

2021-11-03

MSP430信号发生器.rar

利用MSP430单片机设计的信号发生器,能够发出三角波,正弦波以及方波等等。包含四大项,有源代码、proteus仿真以及Altium desiger设计的原理图以及PCB图,还有设计报告。是课程设计的时候自己做的。

2020-03-19

单片机电梯控制系统源码以及Proteus仿真设计报告等全套资料.rar

无提取码,可直接解压。利用51单片机设计的电梯控制系统。有源代码、proteus仿真以及题目要求。是课程设计的时候自己做的。

2020-03-19

opencv编译的boostboostdesc_bgm.i

网页教程如下:https://blog.csdn.net/weixin_42089190/article/details/104768327

2020-09-29

51信号发生器.rar

利用51单片机设计的信号发生器,能够发出三角波,正弦波以及方波等等。有源代码、proteus仿真以及Altium desiger设计的原理图以及PCB图。是课程设计的时候自己做的。

2020-03-19

适用于2016年电子设计竞赛江苏省以及辽宁省循迹小车题目的报告

该文详细介绍了使用STM32F103如何完成省赛题目的所有要求。可以给大家作为参考。同时,我本人在CSDN上还上传了对应程序的压缩包。叫:2016年省赛自动循迹小车STM32F103所有程序。欢迎大家下载。也欢迎大家去看我的博客,上面详细记述了用MSP430G2553完成该赛题的详细过程。

2018-06-03

智能仪器仪表分析——示波器的原理、使用方法及改进 - 副本.docx

自己写的大作业,《智能仪器仪表》课程上的,要求对一个智能仪器做分析。我自己分了两栏,有摘要参考文献等等。 6000字 8页 图文并茂 摘要:本文基于实用角度介绍了模拟以及数字示波器的基本原理,着重于各个模块间的相互关系,而没有细致分析具体的电路是如何实现的。特别分析了智能仪表——数字式示波器的通道短路问题,并予以改进。此外,笔者根据自身的使用经验针对性的查找了一部分数字示波器的使用注意事项,但并没有像实验课程一样手把手教授使用方法。 通过完成这篇大作业,笔者查阅了一些资料,吸收并理解资料内容,并转为自己的理解输出。对于数字示波器有了进一步的了解,解决了之前一直不明白的问题。

2020-03-19

good_adc - 副本.rar

资源描述连接: https://blog.csdn.net/weixin_42089190/article/details/106858906 proteus软件中,LPC2138程序中使用ADC以及串口

2020-06-19

ds18b20设计报告.rar

ds18b20以及单片机所涉及的设计报告,包括pdf以及word版本,方便修改。介绍了一些Proteus仿真的内容

2019-12-01

蛇做错了什么?.pptx

哲学课,旧约创世纪,汇报PPT,主要讲解诱惑亚当和夏娃的蛇做了什么? 蛇做错了什么?.pptx

2021-01-16

Virtual Serial Port Driver.rar

https://blog.csdn.net/weixin_42089190/article/details/106750594 具体介绍在这个博客里

2020-06-14

51单片机最小系统配套原理图

我所上传的最小系统原理图,搭配PCB图可进行最小系统的焊接。

2018-06-07

空空如也

空空如也

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

TA关注的人 TA的粉丝

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