指针一篇就够了

55 阅读1分钟

一、指针的定义

  • 什么是指针:指针是一个变量,其值为其它变量的内存地址 其定义形式为

          `:type *var-name;
    

type 是指针的基类型,它必须是一个有效的 C++ 数据类型,var-name 是指针变量的名称

  • 指针的类型:所有指针的值的实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的长的十六进制数
double *dp;    /* 一个 double 型的指针 */
float  *fp;    /* 一个浮点型的指针 */
char   *ch;    /* 一个字符型的指针 */
  • 不同类型的指针区别:同数据类型的指针之间唯一的不同是,指针所指向的变量或常量的数据类型不同

二、C++ 中使用指针

定义一个指针变量、把变量地址赋值给指针、访问指针变量中可用地址的值。这些是通过使用一元运算符 *来返回位于操作数所指定地址的变量的值

#include <iostream>

using namespace std;

int main ()
{
    int  var = 20;   // 实际变量的声明
    int  *ip;        // 指针变量的声明

    ip = &var;       // 在指针变量中存储 var 的地址

    cout << "Value of var variable: ";
    cout << var << endl;

    // 输出在指针变量中存储的地址
    cout << "Address stored in ip variable: ";
    cout << ip << endl;

    // 访问指针中地址的值
    cout << "Value of *ip variable: ";
    cout << *ip << endl;

    return 0;
}
```