黑马程序员技术交流社区

标题: 指针变量的初始化 [打印本页]

作者: medley    时间: 2016-9-19 22:44
标题: 指针变量的初始化
1).指针变量是用来存储另外1个变量的地址的。
          ->所以,我们不能直接赋值1个非地址类型的常量数据。
          ->所以,我们也不可以直接赋值1个变量给指针。
          所以,指针变量是来存储地址的,不是来存储这些东西的。
     2).指针是用来存储另外1个变量的地址的,并且指针可以存储的另外一个变量的地址,这个变量的类型是限定的。
     3).正确的初始化步骤
          a.先取出变量的地址。
             好简单。使用&取地址运算符就可以取出变量的地址。
             要打印地址,使用格式控制符%p。
          b.将取出来的变量的地址赋值给指针变量。
             int num = 10;
             int* p1 = #
             这个时候,p1指针变量的值就是num变量的地址。
             那么我们就说,p1指针指向了num变量。
     4).指针变量只能存储和指针变量类型相同的普通变量的地址,否则就会出现问题。
         起码我们现在看到在变异的时候会报1个大警告。
     5).如果直接写变量名,操作的就是这个变量。你可以为这个变量赋值或者取值。
         &变量名;其实这是1个表达式,&是1个运算符,叫做取地址运算符。
         这个表达式的结果是这个变量的地址。
     6).指针变量在内存当中也有1个地址,因为指针变量也是1个变量。
         所以,我们也可以使用&符号取出指针变量的地址。
         int *p1;
         p1操作的是p1这个指针变量,可以取p1的值,也可以为p1赋值。
         &p1拿到的是p1的地址。



作者: iamsongxuanlike    时间: 2016-9-20 23:30
支持一下
作者: 跳DJ的农民哥    时间: 2016-9-21 08:52
赞一个!~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2