zoukankan      html  css  js  c++  java
  • c语言指针学习笔记

    指针变量就是存放内存地址的变量。c语言中使用 int *pa; 的方式来定义指针。

    `
    main()

    int a = 10, b=20, s, t, *pa, *pb,*pc,*pd;
    pa = &a;
    pb=pa;
    s=*pb;
    pc=&b;
    
    *pc = *pb;
    t=a;
    
    int ss[10]  = {0,1,2,3,4,5,6,7,8,9};
    int *ps;
    ps=ss;
    for(int i=0;i<10;i++){
    	ps=ps+1;
    }
    

    `

    1. 定义指针变量时,* 只是指明这个变量是指针变量;
    2. 使用指针变量时,* 代表【取内容】。
    3. &代表【取地址】。
      ————————————————————————————————————————————————————————
      具体语句解析:

    int a=10,b=20, *pa, *pb; 定义了int型变量a、b 和指针变量pa、pb,pa和pb的类型是(int*)。

    pa=&a; 在使用中 pa 类型就是(int), &a类型也是(int)。 pa这个指针变量中存放的是a的地址:0x62fde8.

    pb=pa;指针pb中存放的内容也改成了地址0x62fde8。

    s=*pb;使用中 * 代表【取内容】,*pb 是int型,就是取出pb所存地址中的值,即地址 0x62fde8 中的a值10。

    pc=&b; *pc = *pb;
    pc=&b;给指针pc一个地址值,pb就是取出地址0x62fde8中的值10,pc就是取出地址0x62fde4中的值20. *pc = *pb; 直接把地址中的值交换,各自保存的地址值不变(这种交换只能在两个指针都有具体数值后才能进行)。

    ps=ps+1;在数组的循环中,ps=ps+1; 代表指针向后移动一个元素。

  • 相关阅读:
    2017-3-7 leetcode 66 119 121
    2017-3-6 leetcode 118 169 189
    2017-3-5 leetcode 442 531 533
    c++ std
    2017-3-4 leetcode 414 485 495
    2017-3-3 leetcod 1 35 448
    想做手游
    编程规范
    1165: 零起点学算法72——首字母变大写
    1164: 零起点学算法71——C语言合法标识符(存在问题)
  • 原文地址:https://www.cnblogs.com/sunshine233/p/13957638.html
Copyright © 2011-2022 走看看