![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
lvf_5443
这个作者很懒,什么都没留下…
展开
-
C/C++数组指针类型
int a[]; a 代表数组的第一个元素的地址。 &a 代表数组的首地址。 数组指针 是指向一个数组的指针。 定义数组指针有两种方法: (1) 通过数组类型定义数组指针; typedef int(myArray)[5]; myArray* pArray; 定义一个数组指针,这个指针指向一个数组。 打印输出: (2) 声明一个数组指针类型 typedef in...原创 2019-11-20 16:59:08 · 446 阅读 · 0 评论 -
C/C++二级指针内存模型
内存模型视图 二级指针内存分配 char** getspace(int num) { char** p2 = (char**)malloc(sizeof(char*)*num); int i; for (i = 0;i < num;i++) { p2[i] = (char*)malloc(sizeof(char) * 100); ...原创 2019-11-20 11:12:28 · 124 阅读 · 0 评论 -
C/C++ const用法
const 是定义常量,意味着只读。 const int a; //(1) int const b; //(2) (1)和(2)的用法一样,代表一个常整形数。 const char* c; c 是一个指向常整形数的指针(代表所指向的内存数据不能被修改,但是本身可以修改) char* const d;char buf[100] d 为常指针(指针变量d不能修改,...原创 2019-11-16 14:41:05 · 157 阅读 · 0 评论 -
C++ 内存四区
栈区 堆区 全局区(静态区) 常量区 栈区:由编译器自动分配释放,存放函数的参数值,局部变量的值等。 堆区:由程序员分配释放(动态内存的申请与释放),若程序员不释放,程序结束时可能由操作系统回收。 全局区(静态区):全局变量和静态变量的存储放在一块。初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一...原创 2019-11-04 16:39:54 · 112 阅读 · 0 评论 -
C++变量的本质
变量的概念: 概念:既能读又能写的内存对象,称为变量。若一旦初始化后不能修改的对象则称为常量。 变量定义形式:类型 标识符, 标识符,......,标识符; 例如:int a double b 变量本质:(一端连续)内存空间的别名(是一个门牌号) 程序通过变量来申请和命名内存空间 通过变量名访问内存空间 修改变量有几种方法? 1.直接 ...原创 2019-11-04 15:03:55 · 433 阅读 · 0 评论 -
C/C++数据类型(部分构造类型)
数据类型分类: 数据类型的本质:固定内存大小的别名。 数组类型: int a[]; a为只读常量,不能修改。 a代表数组的首元素的地址。 &a代表整个数组的地址。 代码: 输出结果: &b+1 按整个数组大小为单元加一。 b+1 按数组某一元素大小为单元加一。 结构体类型: 结构体声明: struct Techer{ in...原创 2019-11-04 14:04:05 · 212 阅读 · 0 评论 -
C/C++数组做函数参数
数组做函数参数,做法是把数组内存的首地址,和数组有效长度传给被调函数。 数组做函数参数,会变为指针。 证明代码: 打印结果: 从结论看出,实参num,与形参num 大小发生了变化,实参num是数组,而形参num是指针。 ...原创 2019-11-04 11:18:42 · 160 阅读 · 0 评论