因为物理空间存在着大小限制,因此栈空间肯定也是有大小限制的,不然程序还不崩了。
甚至,你可以测试一下,分配一个超大的栈空间(方法是,在函数中,定义一个超大空间的数组),然后看是否可以运行,当达到一个限制的时候,程序是无法正常运行的
linux和windows下同样的文件或文件夹的大小有什么区别1.window下文件夹不算大小,linux下文件夹要算大小2.两个系统下的文件系统可能不一样,不同的文件系统,blocksize可能不一样。blocksize不一样,文件占用的磁盘空间可能就不一样。不同 *** 作系统下查看blocksize的命令:AIX:lsfs -q /u01 Windows:fsutil fsinfo ntfsinfo c:linux:tune2fs -l /dev/sda1 3.window和linux下,文本文件的换行符不同,windows下是/n/r,linux下是/n。当使用FTP传输文本文件时,默认会进行换行符的转换,造成传输前后文件大小不一致。4.要确认看到的文件大小是指文件本身的大小,还是文件占用的磁盘空间的大小,两者概念不同。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的说是1M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示overflow。因此,能从栈获得的空间较小。堆:堆是向高地址扩展的数据结构,是不连续的内存区域。这是由于系统是用链表来存储的空闲内存地址的,自然是不连续的,而链表的遍历方向是由低地址向高地址。堆的大小受限于计算机系统中有效的虚拟内存。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)