- 博客(20)
- 资源 (11)
- 收藏
- 关注
转载 结构体中动态内存的管理(malloc和free)
结构体中动态内存的管理(malloc和free)[转,原文链接] C语言中内存的管理主要是依据malloc和free实现的,其中malloc主要是实现内存的分配,而free则是实现内存的释放。虽然这是我们已经很熟悉的,但是还是存在一些问题。特别是当结构体中存在指针的情况下,各种问题也就会展现出来。其中最大的问题是:结构体中指针变量没有指向一块合法的内存空间,就对指针参数进行操作,这也是很多C语...
2018-06-28 11:45:34 225
转载 结构体成员和结构体指针初始化
#include<stdio.h>#include <stdlib.h>#include <string>struct student{ char *name; int score; struct student* next; }stu,*stu1; int main(){ stu.name = (char*)malloc(s...
2018-06-28 11:38:22 6644 1
翻译 内存泄露——结构体成员指针未初始化
struct student{char * name; int score;}stu, *pstu;int main(){strcpy(stu.name, 'Jimy'); stu.score = 90; return 0;}问:这段代码有什么错误?答:定义的结构体变量stu,分配了char *类型的指针(指针变量name本身只分配了4个字节)和int...
2018-06-28 11:26:57 2175
原创 指向结构体的指针必须初始化
#include<stdio.h>void main(){struct abc{int a;};struct abc *p;p->a=1;printf("%d",p->a);}这个编译没有问题,但是运行是段错误,请问为什么呢因为你定义了一个结构体指针p,用来指向此类结构体,但是你却没有给他赋值,此时p的值为NULL,你并没有在内存中为p分配任何空间,所以p...
2018-06-28 10:48:15 9961
转载 c语言结构体指针初始化
这bug困扰我两天了!非常诡异的bug,症状是传参的时候如果传递的是结构体指针,第一次读取结构体会出来正确的值,第二次就是垃圾数据了。bug的根源在于,应该一开始就用malloc初始化结构体指针作为返回值,而不是初始化一个结构体然后取地址。这么取出来的地址类型不对,会造成诡异的bug,比方说我遇上的这个,从这个症状咱能想到什么? 看代码!以后这错误不能犯了。结构体数组一生下来就必须mall...
2018-06-28 10:39:01 932 1
转载 C语言结构体初始化和结构体指针
结构体初始化#include <stdio.h>//结构体的声明和定义方法//1.声明和定义分离struct weapon{ char name[20]; int atk; int price;}; //声明//定义struct weapon weapon_1; //====================================///...
2018-06-28 10:31:01 1295
转载 typedef关键字与结构体、结构体指针的定义
一、使用typedef定义结构体typedef用来定义新的数据类型,通常typedef与结构体的定义配合使用。使用typedef的目的使结构体的表达更加简练(所以说typedef语句并不是必须使用的)。定义一个名字为TreeNode的结构体类型(现在并没有定义结构体变量,并不占用内存空间):struct TreeNode{ int Element; struct Tre...
2018-06-28 10:12:02 21071 12
转载 结构体struct和typedef后面接指针的含义
在C语言里面,struct是用来定义新的数据类型——结构体,typedef是给数据类型取别名。据说这两个关键词同时使用有助于减少代码量和增加代码的可读性(不过我认为它当typedef和struct在一起的时候反而降低了代码的可读性),很多时候为了方便,我们常常讲stuct与typedef放在一起用。像这样的代码是比较好理解的,就是取FileInfo为sturct file的别名嘛。typedef ...
2018-06-28 10:04:05 11522 8
转载 continue和break
工程中作用很神奇!!break和continue的区别break1.break 语句可用于跳出循环。2.break所在的循环体已经结束。continue1.continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。2.continue所在的循环体并没有结束。demo演示 for (i=0;i<5;i++) { if (i==3...
2018-06-26 17:11:23 121
转载 C++学习心得
1.把C++当成一门新的语言学习;2.看《Thinking In C++》;3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言;5.不要放过任何一个看上去很简单的小编程问题——...
2018-06-25 15:58:59 3297
转载 dll二次封装
需要用到二次封装,其实很简单,不过在第二个dll调用第一个dll的方法而已。 笔记下以免忘了。 //dll1.h:#ifndef _dll1_h#define _dll1_h#define MYDLL extern "C" _declspec (dllexport)MYDLL int add(int x,int y);#endif //_dll1_h12345//dll1.cpp#incl...
2018-06-25 15:41:38 2245
原创 学习使用C++封装DLL并调用
身为学渣,总是学完就忘,所以写下来方便自己以后查看,也是为其他小白提供一点思路。参考的资料:http://blog.csdn.net/u011221078/article/details/41308217http://blog.sina.com.cn/s/blog_7939cf980102v052.html一、生成DLLVS2013——建立win32项目——DLL——完成[cpp] view pl...
2018-06-25 15:17:15 3748
原创 多继承
多继承多继承即一个子类可以有多个父类,它继承了多个父类的特性。C++ 类可以从多个类继承成员,语法如下:class <派生类名>:<继承方式1><基类名1>,<继承方式2><基类名2>,…{<派生类类体>};其中,访问修饰符继承方式是 public、protected 或 private 其中的一个,用来修饰每个基类,...
2018-06-20 17:20:25 147
转载 OpenCV显示中文汉字
OpenCV显示中文汉字,未使用CvxText和FreeType库采用windows的GDI显示系统的TrueType字体,没有封装,就两个函数,分成了h和cpp文件,可以自己编辑文件名和函数名,亦可以直接将cpp的代码复制到你需要的程序中。putText.hputText.cpp演示文件putText.h后面的cpp文件有一些简要说明。#ifndef PUTTEXT_H_#define PUT...
2018-06-07 17:39:45 13217 11
原创 warning
warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory.本着不放过任何一个warning的原则,...
2018-06-07 10:58:49 682
转载 验证集(dev set)
假设这是训练数据,我用一个长方形表示,我们通常会将这些数据划分成几部分,一部分作为训练集,一部分作为简单交叉验证集,有时也称之为验证集,方便起见,我就叫它验证集(dev set),其实都是同一个概念,最后一部分则作为测试集。接下来,我们开始对训练执行算法,通过验证集或简单交叉验证集选择最好的模型,经过充分验证,我们选定了最终模型,然后就可以在测试集上进行评估了,为了无偏评估算法的运行状况。在机器学...
2018-06-04 16:08:46 6481
翻译 深度学习和大脑有什么关联性吗?
深度学习和大脑有什么关联性吗?关联不大。那么人们为什么会说深度学习和大脑相关呢?当你在实现一个神经网络的时候,那些公式是你在做的东西,你会做前向传播、反向传播、梯度下降法,其实很难表述这些公式具体做了什么,深度学习像大脑这样的类比其实是过度简化了我们的大脑具体在做什么,但因为这种形式很简洁,也能让普通人更愿意公开讨论,也方便新闻报道并且吸引大众眼球,但这个类比是非常不准确的。一个神经网络的逻辑单元...
2018-06-04 15:26:46 1822 1
原创 什么是超参数?
想要你的深度神经网络起很好的效果,你还需要规划好你的参数以及超参数。比如算法中的learning rate (学习率)、iterations(梯度下降法循环的数量)、 (隐藏层数目)、 (隐藏层单元数目)、choice of activation function(激活函数的选择)都需要你来设置,这些数字实际上控制了最后的参数 和 的值,...
2018-06-04 15:17:36 1263
原创 深度学习符号指南
上图是一个四层的神经网络,有三个隐藏层。我们可以看到,第一层(即左边数过去第二层,因为输入层是第0层)有5个神经元数目,第二层5个,第三层3个。我们用L表示层数,上图:L=4,输入层的索引为“0”,第一个隐藏层n^([1])=5,表示有5个隐藏神经元,同理n^([2])=5,n^([3])=3,n^([4])=n^([L])=1(输出单元为1)。而输入层,n^([0])=n_x=3。在不同层所拥有...
2018-06-04 14:26:50 1678
第3章 视频对象分割.ppt
2020-02-19
第2章 运动估计.ppt
2020-02-19
Improving neural networks by preventing co-adaptation of feature detectors
2017-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人