- 博客(111)
- 资源 (2)
- 收藏
- 关注
转载 int (*p)[n] 、int *p[n]、int *p()、int *p、int **p、int (*p)()等简单总结
如int *p ={1,2,3}, int **pp=&p,pp=指针p的首地址,*pp=数组的首地址,**pp=数组第一个值1。p[n] 就是一个指针数组,数据类型为int ,元素为地址(变量地址,数组地址,函数地址等),也就是说定义了n个不同指向int型的指针。为了便于理解,可以把这个p换成一个函数的名字 ,比如fun,那么int *fun()代表的是调用这个函数后,这个函数的返回值是一个指针。int **p表示的是二级指针,表示p所指向的地址里面存放的是一个指向int类型的指针。
2023-10-31 13:38:32
880
原创 C++使用两个栈实现双端队列——F1 B1 B2 B3 B4 B5 PF PF PB PB
当有一个栈空,比如左栈v1空了,此时还要从左边出栈,那么把v2的所有元素依次装到v1里面,这样元素的相对顺序就没有变化。如v2从栈顶到栈底有元素5-4-2-3 ,那么装入v1仍是:5-4-2-3,在v1出栈3,就达到了最开始v2想要出栈底元素的内容。示例:F1 B1 B2 B3 B4 B5 PF PF PB PB。用两个栈v1,v2分别表示左栈和右栈,即可实现双端队列。当两个栈都不空的时候,不管前面后面出栈,都直接Pop。当从前面插入元素时,v1.push()当从后面插入元素时,v2.push()
2023-10-12 20:24:46
410
原创 将 ipv4地址 转化为32位无符号整数 ——如 “10.10.1.1” 为168427777
其中每个部分最多三个数字,故使用循环三次获得整数,不足三个数字,检测跳出循环即可。1、依次取出四个部分ip,将其化为整数;若不足四部分,判定为非法ip。2、对每个部分的ip整数,看作是256进制,将其运算叠加,得到答案。如 “10.10.1.1” 为168427777。将 ipv4地址 转化为32位无符号整数。
2023-10-09 21:32:32
636
转载 C++读取含空格的字符串
注意:如果要循环的多次从屏幕上读取一行的话,就要在读取一行后,在用%c读取一个字符,将输入缓冲区中的换行符给读出来。功能是从标准输入键盘上读入一个完整的行(从标准输入读,一直读到遇到换行符),把读到的内容存入括号中指定的字符数组里,并用空字符’\0’取代行尾的换行符’\n’。说明:在scanf函数中,可以使用%c来读取一个字符,使用%s读取一个字符串, 但是读取字符串时不忽略空格,读字符串时忽略开始的空格,并且读到空格为止,因此只能读取一个单词,而不是整行字符串。读入不需要考虑最后的换行符。
2023-10-08 21:08:23
3141
原创 C++智能指针weak_ptr的作用
使用std::weak_ptr来持有A的弱引用,这样不会增加A对象的引用计数。当A对象被释放时,std::weak_ptr会自动失效,不会影响资源的释放。这样就打破了循环引用,避免了资源泄漏的问题。
2023-08-28 14:04:50
153
转载 Pytorch 并行训练(DP, DDP)的原理和应用
5、在主 GPU 上,通过 loss function 计算出 loss,对 loss function 求导,求出损失梯度。3、每个 GPU 分别独立进行前向传播,得到 outputs。1、将 inputs 从主 GPU 分发到所有 GPU 上。2、将 model 从主 GPU 分发到所有 GPU 上。4、将每个 GPU 的 outputs 发回主 GPU。8、将所有梯度回传到主 GPU,通过梯度更新模型权重。6、计算得到的梯度分发到所有 GPU 上。7、反向传播计算参数梯度。9、不断重复上面的过程。
2023-05-22 23:24:56
286
原创 python 安装ffmpeg,将图像序列转化为视频
将图像序列转化为视频,输入两个参数,图片路径,和生成视频的路径。使用方法:`frames_video("masked_frames","./")`
2023-05-05 20:08:29
1031
原创 Python 将图像列表转化为多维tensor张量
主要是看__call__() 方法,考虑图像的mode方式,如果是RGB的方式,有不同的处理,主要的函数其实就是。这里其实就是将图像的像素值范围转化,range。下面这两类方法都是自定义的。
2023-04-20 17:19:22
1381
转载 12 gcc、g++、make、cmake区别
gcc/g++应对单个文件比较好,但是当面对大工程时,我们一般会用make工具,make工具则是根据Makefile的信息来进行编译等,但是Makefile在工程比较大的时候,人工手写也是很复杂的,所以有了cmake工具,cmake则是根据文件去生成makefile。到这里套娃结束,因为即使工程再怎么大,认为都是可以去书写CMakeLists.txt 文件的。
2023-04-19 22:02:51
549
原创 如何从阿里云盘下载大文件到自己的电脑或者租赁的服务器中?
你将得到一串字符,将引号里的字符粘贴到刚才在终端login后的地方,即可显示登录成功。使用help可以知道阿里云盘的帮助哈。2、按键盘上的F12键,找到console控制台。如果你是Ubuntu系统的话,直接在使用。1、进入阿里云盘网页版。
2023-04-13 11:49:53
2412
1
转载 11-pytorch中 list 转换为 tensor 张量方法 torch.stack(tensor_list,0)
pytorch中 list 转换为 tensor 张量方法 torch.stack(tensor_list,0)
2022-09-19 22:31:04
1749
原创 10-pytorch中对于tensor张量切换维度a.permute()方法
pytorch中对于tensor张量切换维度a.permute()方法
2022-09-19 22:27:41
382
原创 09-python 复制文件 n.txt 到指定目录 c:\users\desktop
python 复制文件 n.txt 到指定目录 c:\users\desktop
2022-08-11 14:38:51
557
原创 Qml-跨窗口拖动图片、物体
跨窗口,鼠标id仍然是蒙层的id,这样一样会被遮挡。最后发现,当我们按下的时候,可以手动设置蒙层的mouseArea的大小区域,使得不被干扰,当释放的时候,又可以设置他的区域,甚至乎设置为0....
2022-07-20 16:53:29
1402
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人