2019年7月8日

堆和栈的区别

摘要: 堆和栈在程序的布局中是二个不同的组成部分。事实上,堆和栈都是内存的一个组成部分,通常把堆和栈联合起来称为堆栈。 实际上堆是堆,栈是栈,堆和栈是完全不同的二个概念。下面从多个方面来区分堆和栈。 1 内存分配: 堆:由程序员负责申请,并提供需要申请的内存大小。堆使用完成后,由程序员负责显示释放。 c语言 阅读全文

posted @ 2019-07-08 17:35 锋邢天下 阅读(480) 评论(0) 推荐(0) 编辑

0,'0','\0',NULL的区别

摘要: 0,'0','\0',NULL的区别1,0是一个值,可以是char ,int ,float,double等类型; 2,'0'是一个字符(char)类型,它的ASCII码值是48; 3,'\0'也是一个字符类型,它的ASCII码值就是0,是字符串的结尾符; 4,NULL一般可以理解为指针类型,用于对指 阅读全文

posted @ 2019-07-08 14:41 锋邢天下 阅读(1788) 评论(0) 推荐(0) 编辑

strlen与sizeof区别

摘要: strlen与sizeof都可以用来计算相关字符指针和字符数组的长度,容易混淆。这里用实际例子对它们加以区分。总的来说:strlen是用来计算字符串的字符个数(不含'\0')的函数;而sizeof是用来计算类型或者变量的存储大小的操作符(而不是函数),因此sizeof的结果是在编译阶段就能确定的。题 阅读全文

posted @ 2019-07-08 14:18 锋邢天下 阅读(1220) 评论(0) 推荐(0) 编辑

字符串初始化方式与区别

摘要: 在代码里,经常会用字符串进行初始化操作。如: 对于上面2条初始化语句,它们的区别是什么? 1 "hello"是一个字符串常量,存放在静态常量区 2 str1是一个字符数组,分配在栈上,存储空间由"hello"的长度决定(含'\0'),存放的内容由"hello"进行初始化。 也就是编译器会把静态常量区 阅读全文

posted @ 2019-07-08 11:21 锋邢天下 阅读(1394) 评论(0) 推荐(0) 编辑

导航