C++ 指针运算符(& 和 *)

返回上一级

C++ 提供了两种指针运算符,一种是取地址运算符 &,一种是间接寻址运算符 *

取地址运算符 &

& 是一元运算符,返回操作数的内存地址。

例如,如果 var 是一个整型变量,则 &var 是它的地址。

取地址运算符 & 与其他一元运算符具有相同的优先级,在运算时它是从右向左顺序进行的

间接寻址运算符 *

间接寻址运算符 * 是 & 运算符的补充

  • 是一元运算符,返回操作数所指定地址的变量的值

范例

/**
 * file: main.cpp
 * author: 简单教程(www.twle.cn)
 *
 * Copyright © 2015-2065 www.twle.cn. All rights reserved.
 */

#include <iostream>

using namespace std;

int main ()
{
   int  var;
   int  *ptr;
   int  val;

   var = 3000;

   // 获取 var 的地址
   ptr = &var;

   // 获取 ptr 的值
   val = *ptr;
   cout << "Value of var :" << var << endl;
   cout << "Value of ptr :" << ptr << endl;
   cout << "Value of val :" << val << endl;

   return 0;
}

编译和运行以上范例,输出结果如下:

$ g++ main.cpp && ./a.out
Value of var :3000
Value of ptr :0x7fff5955c2b8
Value of val :3000

返回上一级

C++ 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.