红酒网站页面设计总结,平面设计素材网站有哪些,大型小说网站开发语言,织梦模板网站怎么备份什么是指针
指针就是地址#xff0c;地址就是内存单元的编号
指针变量#xff0c;存放其他变量地址的变量 #xff0c;存放地址的变量 第2句话#xff0c;修改i的值也不影响p的值#xff0c;可以看下面的例子#xff0c;p放的是地址#xff0c;p的地址修改了#xff…什么是指针
指针就是地址地址就是内存单元的编号
指针变量存放其他变量地址的变量 存放地址的变量 第2句话修改i的值也不影响p的值可以看下面的例子p放的是地址p的地址修改了不影响i不是修改*p 指针重要性 指针的定义 指针的分类指针和 基本类型指针 星号的含义 形参实参
执行swap_1时第一步先为它里面的局部变量分配存储空间第二步把实参的值发送给形参这意味着i和a是不同的变量当swap_1执行完毕后swap_1中所有变量的空间全部被释放了 指针和数组
指针和一维数组 指针变量的运算 一个指针变量到底站占几个字节 p,q,r都存放第一个字节的地址。
那为什么存放第一个字节的地址我们说r存放x的地址r就指向x但r又保存了第一个字节的地址那严格来说r只能指向第一个字节那为什么*r是x呢这是一个矛盾的地方。比如一个变量占四个字节我们不能说把这四个字节的地址都保存起来我们只保存第一个字节的编号。
我怎么知道r是指向的从这开始的8个字节这是靠变量类型p,q,r都存放一个字节的地址但总体长度是几是靠前面的类型决定的。
p,q,r都存放一个字节的地址但p,q,r却占四个字节呢这说明地址或者说编号占四个字节为什么四个
地址编号
一共32个零每个单元四个字节32位无论是第几个地址编号都要用四个字节保存
指针和二维数组
动态内存分配 传统数组的缺点 为什么需要动态内存分配 malloc free 分配了四个字节只返回第一个字节的地址第一个字节的地址到底是什么类型的地址那指向他的变量占几个字节
第一个字节的地址本身不能确定指向它的变量占几个字节所以前面需要强制类型转换
表示把第一个字节的地址强制转换为整型的地址也就说malloc函数虽然只返回了第一个字节的地址但第一个字节的地址代表的是一个整型变量的地址整型变量的地址肯定四个四个划分的。
p只保存了四个字节中第一个字节的地址因为有强制类型转换虽然只有一个地址但它知道是整型的地址所以四个四个划分刚好指向这四个字节。 4表示分配四个字节但malloc函数只返回了第一个字节的地址所以需要强制类型转换来告诉别人你这个指向第一个字节的地址的变量到底占几个字节。 malloc分配了四个p是一个变量p也有空间没空间怎么把第一个字节的地址放进去
第一个字节的地址需要几个字节去保存四个因为地址就是内存单元的编号内存单元的编号由32根地址总线来排列组合的所以需要四个字节。
指针变量无论它指向的变量占几个字节它都占四个字节。 所谓分配就是把这四个字节的使用权限给你所谓释放就是这四个字节的内存不能使用了不能写也不能读。 动态一维数组构造 如果一个指针指向四个字节加一指向后四个字节
如果一个指针指向100个字节加一指向后100个字节 动态内存静态内存的比较 多级指针
p是指针变量是变量一定有地址 跨函数使用内存 不能再去读写内容。