A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 你说呢 中级黑马   /  2015-7-16 19:46  /  537 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 你说呢 于 2015-7-16 19:49 编辑

内存地址------内存中储存单元的编号也成为指针
内存单元的地址和内存单元中的数据是两个完全不同的概念
变量地址---系统分配给变量的内存单元的起始地址

指针的艺术
使用指针的好处:
1.为函数提供修改调用变量的灵活手段
2.让函数有多个返回值
3.可以改善木屑子程序的效率
4.在数据传递时,如果数据块较大(比如说数据缓冲区或比较大的结构),这是就可以使用指针传递地址而不是实际数据,即提高出书速度,又节省大量的内存
5.为动态数据结构(如二叉树。链表)提供支持
直接存取:变量名的赋值和取值   通过变量名
间接存取:  通过数据的地址
指针变量:允许用一个变量来存放指针,这种变量为指针变量,
指针就是一个地址   是一个常量
Int a=3; &A






指针变量定义
一般形式:类型说明符  *变量名
*表示一个指针变量,变量名即为定义的指针变量名,类型说明符表示本指针变量所指向的变量的数据类型
  Int *pi;
Long *pl
Float *pf;
Char *pc   *号表示定义的变量是指针变量,变量的值只能存放地址
一个类型的指针只能指向同类型的变量,不能指向其他类型的变量
指针变量可以使局部的
指针变量的初始化和引用
指针的指向可以改变
指针没有初始化里面是一个垃圾值,这时候我们这时一个野指针
访问野指针
1.可能导致程序崩溃
2.访问你不该访问的数据
所以指针必须初始化才能可以访问其所指向的储存区域

作用:获取指针变量所指向的内存空间的内容        
获取指针变量之所对应的储存单元

*的用法:
用于定义一个指针变量
存取指针变量指向的储存空间的内容
#include<stdio.h>
int main() {
        int a=3,b=3;
        int a1=10;
        int *p=&a;//p指向a
        int * p1=&a,*p2=&a;//p1 p2 都指向了a
        int *p3=&b, *p4;//部分初始化  
        p4=&b;            
         int pp=*p4;
         printf("%d\n",pp);
               
        
        return 0;
        
}





















1 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马