c++ - 有没有一种将变量名转换为双指针的简便方法?

标签 c++ c pointers

例如:

int x = 7          // x is variable name
int* p_x = &x      // p_x is a pointer to x
int** pp_x = &p_x  // pp_x is a double pointer to x.

是否有一种不使用中间变量 p_x 就能从 x 快速转到 pp_x 的方法?

编辑: 感谢下面的评论,我意识到这样的事情是不可能的,因为没有 p_xpp_x 将毫无意义(没有双关语意),因为它不会指向对任何事。

最佳答案

如果您的目标是高于 C99 的任何内容,您可以使用复合文字 - 如下所示:

int **pp_x = (int *[1]){(int[1]){7}};

关于c++ - 有没有一种将变量名转换为双指针的简便方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52698727/

相关文章:

c++ - 调用成员函数集到特定变体的正确 C++ 变体语法是什么?

c++ - 获取 "error LNK2019: unresolved external symbol"

C++ 字符串指针与其指向的字符串没有相同的内存地址

c++ - 在 C 和 C++ 中,const 指针对指针的含义是什么?

c - 如何在 Turbo C IDE 中查看程序的输出?

c - 结构指针变为 NULL ? (C)

c++ - 为什么 N3421 不提供 noexcept 限定词?

c++ - WINAPI 消息循环让我抓狂

c - C中的数据结构——在列表的开头插入节点

c - C : remove node function 中的二叉搜索树