
accumulate
魂小猫
这个作者很懒,什么都没留下…
展开
-
深度学习
深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。[1] 深度学习的概念由Hinton等人于2006年提出。基于深度置信网络(DBN)提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构。此外Lecun等人提出的卷积神经网络是第一个真转载 2017-04-29 13:08:21 · 433 阅读 · 0 评论 -
详解c++指针的指针和指针的引用
展示一下使用指针的指针和指针的引用修改传递给方法的指针,以便更好的使用它。(这里说的指针的指针不是一个二维数组)为什么需要使用它们 当我们把一个指针做为参数传一个方法时,其实是把指针的复本传递给了方法,也可以说传递指针是指针的值传递。如果我们在方法内部修改指针会出现问题,在方法里做修改只是修改的指针的copy而不是指针本身,原来的指针还保留着原来的值。我们用下边的代码说明一下问题: int m_转载 2017-04-24 13:15:47 · 484 阅读 · 0 评论 -
如何理解指向指针的指针?
int i = 5, j = 6, k = 7; int *ip1 = &i, *ip2 = &j; 现在我们可以这么写: int **ipp = &ip1; 那么现在指针 ipp 指向了 ip1,ip1 指向了 i。*ipp 就是 ip1,**ipp 就是 i,或者说是 5。我们可以用我们熟悉的盒子箭头图来描述,像这样: 如果我们接着这么写: *ipp = ip2; 我们就改变了转载 2017-04-24 13:01:28 · 281 阅读 · 0 评论 -
int *p=new int; int *p=new int[10]; int *p=new int(10);这三个有什么区别
int p=new int;——分配一个int型变量所占大小的空间,并将首地址赋给int 型指针p。 int p=new int[10];——分配一个有10个int型元素的数组所占空间,并将该数组的第一个元素的地址赋给int 型指针p。 int p=new int(10);——分配一个int型变量所占大小的空间,在其中放入十进制数10,并将首地址赋给int 型指针p。转载 2017-04-24 12:56:52 · 6585 阅读 · 0 评论 -
malloc和free
C语言提供一个分配内存的函数 叫做malloc函数 使用方法为 char *p; p=(char *)malloc(100); p为一个char类型的指针,malloc前面一个()里写出他的指针类型,后面一个()写赋予给他的内存大小。 类型分配使用完后要把这个内存释放掉 而且一定要释放 用free函数 注意malloc函数和free函数一定是成对出现的 free(p); 注意释放原创 2017-04-22 21:35:02 · 211 阅读 · 0 评论 -
野指针之2
1.何为野指针?野指针指指向一个已删除的对象或未申请访问受限内存区域的指针。与空指针不同,野指针无法通过简单地判断是否为NULL避免,而只能通过养成良好的编程习惯来尽力减少。对野指针进行操作很容易造成程序错误。解释一下:malloc 和 free 是在系统的栈上分配空间。 malloc是申请,意思就是告诉系统,我要用一块RAM,给我用了别人就不要用了。 free是释放,意思是告诉系统,给我的这块转载 2017-04-22 21:29:19 · 177 阅读 · 0 评论 -
野指针
“野指针”不是NULL指针,是指向“垃圾”内存的指针。人们一般不会错用NULL指针,因为用if语句很容易判断。但是“野指针”是很危险的,if语句对它不起作用 野指针”的成因主要有两种: (1)指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。例如 ch转载 2017-04-22 21:25:59 · 203 阅读 · 0 评论 -
关于指针int *p=&a和*p=&a的纠正
指针是一种类型; int*;这是一种类型; int p;p是int 类型,也就是int型指针; *p指向a;则*p表示的就是a,a是一个int 型变量,所以*p是int变量; int*p=&a是初始化与int *p;p=&a;是完全相同的;所以int *是一种类型 *是指针运算符 是一种运算符 *p代表对指针变量p 操作了指针运算符 p=&a代表p存储了a的地址,此时用*p 就代表了*原创 2017-04-22 21:18:55 · 2891 阅读 · 0 评论 -
字符串和字符串数组和\0
只有字符数组后才需要跟\0,不是字符数组不用加\0对于字符数组后面是否要加‘\0’,有以下几种情况: 第一种: char str[10] = {‘h’,’e’,’l’,’l’,’o’}; 如果大括号中的字符个数小于字符数组的长度,则把大括号中的字符赋给数组中前面的元素,其余元素自动赋值为空字符(即‘\0’)。 第二种:char str[5] = {‘h’,’e’,’l’,’l’,’o’};转载 2017-04-22 20:52:56 · 1205 阅读 · 0 评论 -
指针和引用区别
指针和引用的定义和性质区别: 指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元; 而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如: int a=1;int *p=&a; int a=1;int &b=a; 上面定义了一个整形变量和一个指针变量p,该指针变量指向a的存储单元,即p的值是a存储单元的地址。 而下面2句定义了一个整形变量a和这转载 2017-05-01 14:07:50 · 264 阅读 · 0 评论 -
pass by value & pass by reference
传值:外面(函数外面)的地址与里面(函数里面)操作的数(内容)(的地址)不是同一个,所以根本没有修改. 传地址:外面(函数外面)的地址与里面(函数里面)操作的数(内容)的地址是同一个,所以在函数里面修改的话,影响外面.转载 2017-05-01 13:57:09 · 729 阅读 · 0 评论 -
C语言中返回字符串函数的四种实现方法
有四种方式: 1。使用堆空间,返回申请的堆地址,注意释放 2。函数参数传递指针,返回该指针 3。返回函数内定义的静态变量(共享) 4。返回全局变量 其实就是要返回一个有效的指针,尾部变量退出后就无效了。 使用分配的内存,地址是有效 char *fun() { char* s = (char*)calloc(100, sizeof(char*)转载 2017-04-30 16:15:10 · 399 阅读 · 0 评论 -
malloc()与calloc区别
1.分配内存空间函数malloc 调用形式: (类型说明符) malloc (size) 功能:在内存的动态存储区中分配一块长度为”size” 字节的连续区域。函数的返回值为该区域的首地址。 “类型说明符”表示把该区域用于何种数据类型。(类型说明符)表示把返回值强制转换为该类型指针。“size”是一个无符号数。例如: pc=(char *) malloc (100); 表示分配100个字节的内存空转载 2017-04-30 16:13:04 · 846 阅读 · 0 评论 -
i&1的用法
if(i&1==1) 表示 如果是 奇数 则。。。 i&1 – 按位与运算,取 2进制整数 i 的最低位,如果最低位是1 则得1,如果最低位是0 则得0。 奇数 i 的最低位 是1,偶数i 的最低位 是0。 i 2进制 &1 0 0000 0000 &1 得0 偶数 1 0000 0001 &1 得1 奇数 2 0000 0010 &1 得0 偶数 3 0000 0011 &1 得1转载 2017-04-29 15:45:54 · 7573 阅读 · 0 评论 -
srand rand time函数设置随机值
计算机没有办法产生真正的随机数的,是用算法模拟,所以你只调用rand,每次出来的东西是一样的。设置一个种子后,根据种子的不同,就可以产生不同的数了。而怎么保证种子的不同呢?最简单的办法当然是用永远在向前的时间。srand(time(0)) ;//先设置种子 rand();//然后产生随机数 Srand是种下随机种子数,你每回种下的种子不一样,用Rand得到的随机数就不一样。为了每回种下一个不一样原创 2017-04-29 15:13:47 · 809 阅读 · 0 评论 -
strlen
头文件:#include转载 2017-04-29 14:59:54 · 601 阅读 · 0 评论 -
e和%e的应用
%e的用法 e+5->*10^5 e-5->*10^-5原创 2017-04-29 14:32:34 · 1157 阅读 · 0 评论 -
typedef struct和struct区别
分三块来讲述: 1 首先: 在C中定义一个结构体类型要用typedef: typedef struct Student { int a; }Stu; 于是在声明变量的时候就可:Stu stu1; 如果没有typedef就必须用struct Student stu1;来声明 这里的Stu实际上就是st转载 2017-10-19 20:35:13 · 305 阅读 · 0 评论