• C++指针学习


    指针的概念:指向另一个变量的地址,用于间接访问该变量。

    指针变量的概念:用于存放地址的变量。

    指针变量的初始化: 存储类型 数据类型 *指针=初始地址;

    例如:  int *pa = &a;

    注意事项:

      1、用变量地址作为初始值时,该变量必须在指针初始化之前已经说明过,且变量类型与指针类型一致。

      2、可以用一个已赋初值的指针去初始化另一个指针变量。

      3、不要用一个内部auto型的变量去初始化static型的指针。

      4、可以将指针赋值为整数0,表示空指针。

      5、允许声明指向void类型的指针。该指针可以被赋予任何类型对象的地址。void类型指针赋值给其他类型指针的时候需要强制类型转换。

    指针的加减运算:

    指针p加上或减去n,其意义是指针当前指向位置的前方或后方第n个数据的地址。  这种运算的结果取决于指针指向的数据类型。

    例如:

    y=*px++;相当于y=*(p++);

    指向数组元素的指针:

    int a[10];

    *p;

    p = a;

    如果有上述的关系,那么a[i],*(p+i),*(a+i),p[i]都是等效的。

    不能写a++,因为a是数组首地址,是常量。

    指针的关系运算:

    指向相同类型数据的指针之间可以进行各种关系运算。

    指向不同类型数据的指针,以及指针与整数变量之间的关系运算是没有意义的。

    指针可以与0之间进行等于或者不等于的关系运算。例如:p==0或p!=0

    指向常量的指针:const char * name = "John"; 所指向的对象的值不能改变。

    常量指针:char * const n = "John"; 指针本身不能改变

     指向类类型对象的指针:

    声明形式:

    类名 *对象指针名

    例如:Point A(10,20);

    Point *p;

    p=&A;

    可以通过指针访问对象成员  p->成员名

  • 相关阅读:
    将一张图片的人物融入另一张图片中
    填充---内容识别图片
    使用蒙版--渐变--制作瓶子倒影
    form表单基础知识
    表格排版及其表格嵌套
    HTML表格,table,thead,tbody,tfoot,th,tr,td,的属性以及跨行,跨列
    垃圾收集,内存问题
    JS预解析机制
    python ==》 内置函数
    python ==》 递归
  • 原文地址:https://www.cnblogs.com/SeawinLong/p/3734120.html
Copyright © 2020-2023  润新知