&
用来取得其操作数的地址。如果操作数 x 的类型为 T,则表达式 &x 的类型是 T 类型指针(指向 T 的指针)。float x, *ptr; ptr = &x; // 合法:使得指针ptr指向x ptr = &(x+1); // 错误: (x+1) 不是一个左值相反地,当已具有一个指针,并且希望获取它所引用的对象时,使用间接运算符 *(indirection operator),有时候这会被称为解引用运算符(dereferencing operator)。它的操作数必须是指针类型。如果 ptr 是指针,那么 *ptr 就是 ptr 所指向的对象或函数。如果 ptr 是一个对象指针,那么 *ptr 就是一个左值,可以把它(即 *ptr)当作赋值运算符左边的操作数:
float x, *ptr = &x; *ptr = 1.7; // 将1.7赋值给变量x ++(*ptr); // 并将变量x的值加1在这个示例最后的语句中,ptr 的值保持不变,但 x 的值变成 2.7。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有