面试常见问题
杨柳_
Java服务端研发,喜欢底层原理与基础算法设计
展开
-
内存溢出和内存泄漏的区别、产生原因以及解决方案
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导...转载 2018-03-19 22:11:21 · 1552 阅读 · 2 评论 -
C语言实现位数组(bit数组)与位数组的简单应用举例
今天有朋友遇到一个笔试题:一个 4096位的bit数组,要找出前10个二进制的1 所在的位置,麻烦写一个函数来实现bit数组对我来说是一个新的概念,故整理资料学习bit数组的概念~加qq1126137994一起学习更多技术!!!1、位数组的概念所谓的位数组,主要是为了有效地利用内存空间而设计的一种存储数据的方式。在这种结构中一个整数在内存中用一位(1 bit)表示。这里所谓的表...原创 2018-04-03 08:58:09 · 22411 阅读 · 1 评论 -
常用内存分配函数的说明
下面哪种C/C++ 分配内存的方法会将分配的空间初始化为0A malloc() B calloc() C realloc() D new[ ]1) malloc 函数: void *malloc(unsigned int size) 在内存的动态分配区域中分配一个长度为size的连续空间,如果分配成功,则返回所分配内存空间的首地址,否则返回NULL,申请的内存不会进行初始...原创 2018-04-10 16:52:08 · 553 阅读 · 0 评论 -
指针的大小与什么有关
指针的大小与什么有关? 1、cpu位数(32位数4字节,64位数8字节) 2、操作系统位数(32位数4字节,64位数8字节) 3、编译器的位数(32位数4字节,64位数8字节) 当上述3种位数不同,取最小的位数。 比如,如果CPU、系统都是64位的,但编译器是32位的,那么很显然指针只能是32位4字节大小。我们的内存中有各种各样的数据,整型、浮点型、字符型等等。这些数据在内存中占据不...原创 2018-04-22 17:44:22 · 9019 阅读 · 1 评论