上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页
摘要: c语言 返回局部变量 局部指针 局部数组 讨论这个问题之前,一定要理解堆区和栈区的工作原理,数据的存储区域(参考内存四区模型),另外一定不要返回局部对象或变量的引用和指针。 局部变量 局部变量分局部自动变量和局部静态变量,由于c返回的是值,因此返回一个局部变量是可以的,无论自动还是静态,因为这时候返 阅读全文
posted @ 2018-12-21 11:30 两猿社 阅读(8537) 评论(0) 推荐(1) 编辑
摘要: 内存可以先粗略的分为四个区,分别是代码区,数据区,栈区和堆区。其中,数据区可以分为全局区/静态区、常量区。 数据区内容的生命周期从程序开始到程序终止;栈区的内容从函数左括号开始,到右括号为止,函数结束后,内存自动释放回收;堆区的内容由程序员自己开辟,手动释放。 代码区: 程序指令 数据区:(全局区/ 阅读全文
posted @ 2018-12-21 10:09 两猿社 阅读(841) 评论(0) 推荐(0) 编辑
摘要: Visual Studio调试时,出现“触发一个断点”内存释放出现异常 数组和对应指针的NULL初始化 数组使用之前要先对其初始化 对应指针进行动态初始化 分配内存后,需要对内存进行释放,程序对内存进行释放后,并不会将其置为NULL,必须手动将指针置为NULL,防止访问野指针或再次释放出错。 释放内 阅读全文
posted @ 2018-12-20 15:56 两猿社 阅读(978) 评论(0) 推荐(1) 编辑
摘要: 动态分配内存专题 关于动态分配内存: 局部变量在栈中分配空间,静态变量和全局变量在静态存储区分配空间,动态内存分配,主要是在堆中分配空间。 为什么使用动态内存分配 1.声明数组时,必须在编译时知道他的长度,有些数组的长度常常在运行时才知道,若提前声明过大的数组,则会造成空间浪费。 2.当函数返回值为 阅读全文
posted @ 2018-12-17 11:23 两猿社 阅读(367) 评论(0) 推荐(0) 编辑
摘要: C语言结构体初始化的四种方法 C语言聚合数据类型包括数组和结构体,其中数组中是相同类型的元素的集合,可以通过下标引用或之子很间接访问,但结构体各个成员可以是不同的数据类型。 结构声明 完整的结构声明:struct tag {number-list} variable-list; 黑体部分至少要出现两 阅读全文
posted @ 2018-12-17 11:22 两猿社 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 字符串处理函数 1.字符串长度 strlen表示包含的字符的个数,size_t strlen(char cosnt *string), 返回的是size_t类型,它是无符号整数类型,在表达式中进行运算时必须强制转换成整型int,因为无符号数不可能是负的,如strlen(x) - strlen(y) 阅读全文
posted @ 2018-12-17 11:21 两猿社 阅读(1857) 评论(0) 推荐(0) 编辑
摘要: 数组指针和指针数组 二级指针的作用详解 首先确定优先级:()>[]>*,另外数组指针,类比整型指针,表示指向数组的指针;指针数组,类比整型数组,表示元素为指针的数组。 数组指针 int (*p)[n] 首先()优先级高,它是一个指针,指向一个整型数组。n为数组的长度,当p+1时需要跨越n个整型数据的 阅读全文
posted @ 2018-12-13 21:03 两猿社 阅读(10526) 评论(1) 推荐(1) 编辑
摘要: 指针是一个值为地址的变量,即存储地址的变量,地址没有数据类型之说,char *,int *都是一样的长度,跟机器有关。 int *a表示a地址处存储的值为整型。 指针的初始化 或者 指针的解引用 通过*b,可以对指针b进行解引用(间接访问)从而访问得到a的值。在指针解引用之前需要对它进行检查,判断b 阅读全文
posted @ 2018-12-13 09:16 两猿社 阅读(1741) 评论(1) 推荐(1) 编辑
摘要: 位操作符:<<, >>,&,|,^表示左移位,右移位,与、或、异或。其中位的操纵可以很容易把指定位清零,置一。 复合赋值符:|=,&=,^=和+=操作符原理一致。 单目运算符:sizeof判断操作数的类型的类型长度,以字节为单位。若操作数是数组名,返回数组的长度。判断表达式的长度并不需要对表达式进行 阅读全文
posted @ 2018-12-12 10:46 两猿社 阅读(263) 评论(0) 推荐(0) 编辑
摘要: C/C++中作用域详解 作用域 编译器可以确认的4种作用域-代码块作用域、文件作用域、函数作用域和原型作用域,一般来说,标识符(包括变量名和函数名)声明的位置决定它的作用域。 (1)代码块作用域 一对花括号成为一个代码块,任何在代码块开始位置声明的标识符(不包括代码块的函数名)具有代码块作用域。 代 阅读全文
posted @ 2018-12-11 22:18 两猿社 阅读(509) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页