自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 收藏
  • 关注

原创 c语言如何设置标志,检查标志和判断标志是否已经设置

表示无符号整数 1。U 是 unsigned 的缩写。括号可以避免宏放入更复杂表达式时出现优先级问题。这种写法更直观地说明每个标志位于哪一位。最右边是 bit0。

2026-11-02 16:10:46 242

原创 内存区域:栈、全局区和静态区

在电脑程序中可能暂时没有问题,但在 MCU 和 FreeRTOS 中,每个任务的栈可能只有几 KB。在函数外定义,是全局数组。它在整个程序运行期间一直存在,不占用 process 函数的栈。虽然它只能在 test 函数中通过名字访问,但它占用的内存在整个程序运行期间一直存在。它虽然写在函数内部,但因为有 static,不会放在普通局部变量的栈空间中。它们虽然都是 int,但通常存放在不同的内存区域。定义在函数内部,是普通局部数组,通常占用函数的栈。它通常会占用函数所在任务的栈。也就是大约 40 KB。

2026-10-16 11:18:47 171

原创 变量的作用域:一个变量可以在哪些位置被使用

只在程序开始时初始化一次。函数结束后,变量仍然保留,下次进入函数继续使用之前的值。定义在 show_value 内部,只能在 show_value 中直接使用。编译器会报错,因为 local_value 不在 main 的作用范围内。每次进入函数时创建,函数结束后失效。下次进入函数,又从 0 开始。定义在 main 内部,只能在 main 中直接使用。作用范围:只在static_counter函数内部。它可以让局部变量在多次函数调用之间保留数值。为什么不把所有变量都定义成全局变量?这类变量叫全局变量。

2026-10-16 10:25:29 219

原创 c语言函数有*和没*的区别

那么 p 只是一个普通整数,不是地址,也不指向数组。这里的 data 表示数组第一个元素的地址。p 是一个指针变量,可以接收 int 变量的地址。编译器通常会报错,因为普通整数不能使用数组下标。这里如果不加 *,p 就无法接收和操作整个数组。int *p 接收一个int变量的地址。p中保存一个地址,例如age的地址或数组首地址。p 是一个普通整数,只能接收一个整数值。表示从这个地址开始的第 i 个数值。int p 接收一个整数。表示这个地址里的第一个数值。p中保存一个整数,例如20。

2026-10-10 14:01:58 227

原创 关于C语言中的const作用

只要 main() 中的 config 本身不是 const,就仍然可以直接修改它。但注意,const 并不是让 main() 里面的原始结构体永久不能修改。所以我们希望:ADC 可以修改,但 config 不允许被这个函数修改。第二句会产生编译错误,因为 config 指向的数据被声明为只读。表示函数通过这个指针既可以读取,也可以修改结构体成员。表示函数通过这个指针只能读取结构体成员,不能修改它们。那么函数里面就不能通过 adc 修改数组元素了。我们限制的是函数通过这个指针修改配置的权限。

2026-09-24 10:18:43 191

原创 关于结构体命名的区别

可以把 struct RadarConfig 想成我们自己设计的一种“数据类型”。这里 _t 通常只是命名习惯,表示这是一个类型名,不是什么新的 C 语法。这时候 config 才是变量。给一种数据类型起个名字。

2026-09-23 18:04:21 200

原创 关于vscode安装插件一直安不上显示不信任工作区的解决方法

然后有可能信任了还是不行,那么在信任区添加C盘的program files,还有就是与c代码相关的文件夹也信任就可以。

2026-09-23 16:42:40 36

原创 c代码函数void没有返回值后,为啥传入的的值就能改变了

关键不在 void,关键在于:把数组 adc 传给函数时,函数拿到了原数组的位置。结果是10,不会变成100,因为改的只是值,没改变地址,但是换成下面结果就不同了,void 没有返回值 和 函数能不能修改 adc,是两件完全不同的事情。而地址 1000 里的数据已经被函数改成 -3 了。所以*的作用一个是声明指针,一个是通过指针访问数据。它还是去地址 1000 看数据。用一个更简单的例子,就能看出区别。数据从地址 1000 开始。

2026-09-23 11:48:29 70

原创 devc++突然打不开的方法

2.然后右键 Dev-C++ → 以管理员身份运行。如果管理员运行能出来、普通运行不行,基本就指向权限/目录访问问题。按之前的思路打开Dev-C++,保持现在 devcpp.exe 正在运行。打开任务管理器,把 devcpp.exe 全部“结束任务”,看看里面有没有 Dev-C++ 的窗口预览/图标。1.结束所有 Dev-C++ 进程再启动。最后关闭 Dev-C++再二次打开就行了。看看窗口能不能被拖回来。

2026-09-04 15:49:07 257

原创 关于C代码结构体和matlab的区别在哪儿

创建一种新的结构体类型,这种类型的完整名字叫 struct Person。“我要设计一种新的数据类型,叫 Person,它里面固定有三个东西。后面的 Person 不是普通变量名,而是一个结构体类型标签。“定义一种数据类型,叫 struct Person。“找到 p 指向的结构体,然后访问 speed”。C 结构体像一个“模具”,创建以后形状固定。给这个结构体类型取个短名字 Person。创建一个变量 a,它的类型是 int。指针 —> 内存地址 —> 数据。不是车,而是“车的地址”。

2026-08-25 14:42:08 173

原创 devc++新建单个文件和新建单个项目

*

2025-10-28 21:57:13 610

原创 已知矩阵向量y和矩阵向量x,二者关系为y = kx +b;如何用matlab利用函数表达式求得k和b

【代码】已知矩阵向量y和矩阵向量x,二者关系为y = kx +b;如何用matlab利用函数表达式求得k和b。

2025-03-06 15:45:47 283

原创 matlab关于结构体的创建

网上搜了很多结构体的创建,都是什么student.name student.age,或者struct.自己摸索了一下,根据你想要创建结构体的格式可以划分以下两类。根据自己的需求选择就ok了!

2024-08-17 16:14:11 521

原创 matlab--legend利用for循环添加图例

就会把图例添加到我们新建的plot中,这不是我们想要的,因此第二种方法对指定的plot进行命名。但是如果我们想要再在这个图中添加一个plot。

2024-07-18 09:49:59 2524

原创 matlab ----利用分而治之算法实现冒泡排序代码

【代码】matlab ----利用分而治之算法实现冒泡排序代码。

2024-06-03 16:38:20 222

原创 conda创建环境变量报错NotWritableError: The current user does not have write permissions to a required path

按照网上的处理方案: 使用超级管理员进入,输入下面的命令。chown change owner 改变拥有者。时隔多年,再次安装pytorch,发现之前记录的步骤不使用了,然后就报错了,百思不得其解,好嘛,分析原因,是管理员权限的问题,然后打开conda promt的时候。

2024-05-23 12:00:27 1603

原创 matlab---利用极坐标和角度显示坐标点

中的250,表示显示点的大小,可调,filled 表示是实心的。如果只想要显示0-180°,如果把原点显示为方块。

2024-05-16 17:07:15 1098

原创 MySQL-四张表的介绍以及查询函数

1、点击root@mysql80,右击选中执行SQL脚本。2、如果要查询的字段有重名的情况,使用别名可以区分开来。+,只要其中一方为null,结果为null。遇上别名是英文,最好加上在英文上双引号。

2022-10-21 16:36:39 951

转载 MySQL下载,安装教程和配置环境变量

mysql

2022-10-08 20:01:00 299

原创 latex插入参考文献--BibTex格式

4、用latex编辑器打开刚刚创建的文本,选择allfiles,打开后,弹出这个界面,但是此时是灰色的。因此我们点击另存为saveasto,(必须选择的是tex下同一目录),保存为bib格式,没有的话,需要自己手动改写。8、然后运行,运行的时候按照F5->F8(要跳转到bmyref这个界面运行)->F5的顺序,一种按照这个顺序循环进行,直到引用成功为止。5、引用的话,\cite{xx},这个xx里面的内容是article后面括号第一行的内容,3、复制这里面的内容,粘贴到记事本中,......

2022-07-28 10:17:14 10121

原创 串的基本概念和常见算法(BF算法,KMP算法--附python实现代码)

1、主串的B与模式串的A不一样了,这时判断模式串ABBAB的部分匹配值(前缀和后缀的最长的共有元素的长度),判断出来为2,即AB。第二种就是移动的位数=已匹配的字符数(ABBAB)-部分匹配值(AB)=3,即移动3个位置到达第二个判断点。可以看出主串的位置B与模式串的位置A不一样,这时接着1判断ABBABA的部分匹配值1(A)。串相等当且仅当两个串的长度相等并且各个对应位置上的字符都相同时,这两个串才是相等的。子串一个串中任意个连续字符组成的子序列(含空串)称为该串的子串。...

2022-07-20 15:15:30 1398

原创 数据结构--线性表--链表(转自B站视频)

线性表:用一组物理位置任意的存储单元来存放线性表的数据元素。存储单元可以是连续,也可以是不连续的。它不仅要存储当前元素的地址,还要存储下一个元素的地址。这样即便它的存储地址不是连续的0001,0002,0003,0004,(真实存储地址为:0002,0003,0001,0004),也能找到。把存储下一个元素的地址称为指针域。它本身称为数据域(不是指的是存储地址,而是学生,姓名这种名称,由这两个构成一个结点,由若干个结点构成就是链表。记录第一个元素的地址称为头指针,其中单链表由头指针唯一确定,因此单链表可

2022-07-13 14:25:56 844

原创 数据结构--线性表--顺序表(转自B站视频)

主要操作有:1、初始化操作,建立一个空的线性表L2、销毁已存在的线性表L3、将线性表清空4、在线性表中L中第i个位置插入新元素5、删除线性表L中第i个位置元素,用e返回6、若线性表为空,返回True,否则false7、返回线性表L的元素个数8、L中查找与给定值e相等的元素,若成功返回该元素在表中的序号,否则返回09、将线性表L中的第i个位置元素返回给e第一个元素称为起始结点,最后一个元素称为终端结点。1.1顺序表就是数组,但是在数组的基础上,它还要求数据是连续存储的,不能跳跃间隔。顺序

2022-07-12 20:34:33 505

原创 关于for循环遍历列表的几个用法--python

for…in …:结果如下:同理,for … in iter(…):的方式也类似,结果跟1一样2、输出其索引位置,不输出列表元素,若要输出列表元素,可以采用a[index]的方式for … in range/ (len(a)):为什么要用len,因为range() 函数只能接受整数,因为它需要知道要创建的数字范围的起点和终点。该函数无法从列表对象创建一系列值。list本身就是一个可迭代对象,range接受的是整数,所以解决的办法就是len(a)如下;正确办法:3、即输出列表元素,也输出其索

2022-07-12 15:35:31 7153

原创 数据结构--基本结构和算法复杂度讲解

数据结构与算法

2022-07-08 10:38:18 994

原创 LaTex---在图片或表格上方、下方添加字体

1、\documentclass{ctexbook}%book,report,letter\title{Study latex}\author{YQ}\usepackage{ctex}\date{\today}%\usepackage{graphicx}%语法:\includegraphics[选项]{文件名} %格式:JPG/PDF/PNG/BMP/EPS\usepackage{graphicx}%插图的时候要在导言区导入包\graphicspath{{figures/},{pics/

2022-04-04 15:05:29 12540 1

原创 Latex--插入表格

1、插入表格使用\begin{tabular}{l c c c r} content... \end{tabular}其中l表示左对齐,c表示居中对齐,r表示右对齐2、添加元素,用&符号分割各个名称 \begin{tabular}{l c c c c r} method & bicubic & ibp & stv & ncsr & srcnn \\ psnr & 10

2022-04-02 11:29:45 14310

原创 关于latex的用法----简单介绍

1、分为导言区和正文区%导言区\documentclass{article}%book,report,letter%正文区(文稿区)\begin{document}hello\end{document}第二步:编译文档![在这里插入图片描述](https://img-blog.csdnimg.cn/210d112acbf543f7a5b15c8d8db39990.png注意:一个latex文件有且只有一个document 环境%表示注释3、`/document{article}

2022-04-01 20:12:49 1259

原创 linux常用命令--目录的常规操作

1、遍历目录 cd命令1.1 cd 绝对路径只需在cd命令后指定全文件名例如:cd/home/public/lvm011.2 cd 相对路径第一步可以先pwd列出你目前的位置第二步cd home依次 cd public 、 cd lvm01附注:cd … :表示返回上一级目录cd ~ :表示返回根目录2、创建目录mkdir ncsr删除目录:rmdir ncsr(这种方法仅限于nscr是一个空目录,没有文件)如果有文件的删除目录方法需要先删除文件rm -rf nscr:这种

2022-03-19 20:34:29 581

原创 pytroch 出现 Variable data has to be a tensor, but got tuple

源代码:class DatasetFromFolderEval(data.Dataset): def __init__(self, lr_dir, upscale_factor, transform=None): super(DatasetFromFolderEval, self).__init__() self.image_filenames = [join(lr_dir, x) for x in listdir(lr_dir) if is_image_file(

2022-02-25 11:19:03 1718

原创 pytorch 出现‘DataParallel‘ object has no attribute ‘conv1‘

源代码:if cuda: model = model.cuda(gpus_list[0]) criterion = criterion.cuda(gpus_list[0])# optimizer = optim.Adam(model.parameters(), lr=opt.lr, betas=(0.9, 0.999), eps=1e-8)optimizer = optim.Adam([ {'params': model.conv1.parameters()},

2022-01-11 15:09:43 2277

原创 关于variable的理解

引用莫烦大大的话来说,tensor是一个鸡蛋,而variable相当于一个篮子,把tensor装起来其中variable有三个参数:data:存储了Tensor,是本体的数据grad:保存了data的梯度,本事是个Variable而非Tensor,与data形状一致grad_fn:指向Function对象,用于反向传播的梯度计算之用主要有三步:第一步:创建数据x = Variable(torch.ones(2, 2), requires_grad=False)temp = Variable(

2021-11-20 16:26:46 4050 1

原创 安装pytorch

1、在安装anaconda的前提下打开anaconda prompt2、查看当前环境有哪些:conda env list如果什么都没有安装,就只有一个base环境3、查看python解释器的版本python -V我的显示是3.8.8注意是大写4、安装pytorchconda create -n pytorch python=3.8.8会出现一个proceed([y]/n)?选择y(这时候可以输入conda env list查看自己的环境有哪些,我的是base和刚刚创建的pytorc

2021-11-06 16:43:23 876

原创 pytorch--sequential

一:神经网络的基本结构

2021-10-28 10:43:28 596

原创 pytorch---关于tensor的一些常规知识点

1、创建一个服从均匀分布或者随机分布的张量,其大小可变,可一维,二维tensor.rand(均匀) :区间(0,1)与tensor.randn(正太分布):标准差为0,方差为1y = torch.rand(4)y1 = torch.rand(2,3)print(y)print(y1)x = torch.randn(4)x1 = torch.randn(2,3)print(x)print(x1)输出结果:tensor([0.4162, 0.4271, 0.0685, 0.1288

2021-10-26 21:16:39 803

原创 pytorch学习记录史

一、python两大函数:1、dir():打开,看见2、help():说明书dir(pytorch)输出:1、2、3、4dir(pytorch.3)输出:a、b、chelp(pytorch.3.a)总结:dir函数:能让我们知道工具箱以及工具箱中的分隔区有什么东西help函数:能让我们知道每个工具是如何使用的,工具的使用方法。二、 jupyter使用:1、打开conda promt激活pytorch的环境变量:1、输入conda activate pytorch打开notebook

2021-10-26 20:22:15 235

原创 pycharm关于输入首字母大小写进行提示匹配

一般情况下,你需要输入R,才能提示出Resize但如果我输入的是r,也能提示出Resize,即忽略大小写进行匹配提示,步骤:打开settings,在搜索栏输入case取消掉match case即可。

2021-10-26 15:20:59 2396

原创 ModuleNotFoundError: No module named ‘tensorboard‘

问题:搭建的pytorch环境下已经安装,但运行时依然显示 No module named ‘tensorboard’网上搜索了很久,都没有解决,于是按照自己的步骤一一查看了一下。原因:一般我们搭建的环境都是基于base,假设自己搭建了一个pytorch的环境,并在pytorch环境下安装了pip install tensorboard,但如果新建pycharm的一个工程时,如下;解释器此时的环境依然时base环境,如果你在base环境下安装了tensorboard另说,没有的话,你依然选择这

2021-10-25 20:40:18 20510 6

原创 python --关于split分隔符,rstrip()删除符

split:参数:字符串:要拆分的字符串。分隔符:要分割字符串的分隔符。限制:截断结果的长度。string = 'www.python.com_i love python'#使用默认分隔符print(string.split())#以’。‘为分隔符print(string.split('.'))#以’。‘为分隔符,分割一次print(string.split('.',1))#以’。‘为分隔符,分割一次,并取序列第一项print(string.split('.',1)[0])例子

2021-09-19 15:00:04 2820

原创 python--os.walk, os.listdir,os.chdir

1、关于os.walkOS.walk() 通过自顶向下或自底向上遍历树来生成目录树中的文件名。 对于以目录 top 为根的树中的每个目录(包括 top 本身),它产生一个 3 元组(目录路径、目录名、文件名)。root :仅从您指定的内容中打印出目录。dirs :从根打印出子目录。files :打印出根目录和目录中的所有文件。例如:Test文件夹下面的目录for (root,dirs,files) in os.walk("E:\Test"): print(f'root is {root

2021-09-19 10:43:39 568

空空如也

空空如也

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

TA关注的人

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