`

关于INT *A; INT &A; INT & *A; INT * &A

    博客分类:
  • C++
阅读更多
上述的四条语句,前面两个很好理解,而后面两个,大部分C++初学者都会比较困惑,今天我也是查阅了一些资料以后才恍然大悟。下面具体来说明一下:

int i;

int *a = &i;//这里a是一个指针,它指向变量i

int &b = i;//这里b是一个引用,它是变量i的引用,引用是什么?它的本质是什么?下面会具体讲述

int * &c = a;//这里c是一个引用,它是指针a的引用

int & *d;//这里d是一个指针,它指向引用,但引用不是实体,所以这是错误的

原文地址:http://www.cnblogs.com/netqer/archive/2008/10/20/1315386.html
分享到:
评论

相关推荐

    斗转星移代码

    编写形如void fun(int *a1, int *b1, int *a2, int *b2)的函数,该函数帮助姑苏慕容将四个形参指向的整数互换(a1指向的整数与a2指向的整数互换,b1指向的整数与b2指向的整数互换)。 在主函数main()中输入四个...

    const int *a int * const a区别实例

    const int *a; ``` 这里,a 是一个指向整型常量的指针,指向的对象不能被修改,但指针 a 可以指向另一个常量。例如: ```cpp const int *a = &b; a = &c; // ok! *a = 2; // error! ``` const 指针的 const const...

    const用法 const int *a; int * const a;

    - `const int *a;`:声明了一个指向整型常量的指针`a`,意味着`a`可以指向不同的整型常量,但不能通过`a`修改它所指向的整型常量的值。 - `int * const a;`:声明了一个指向整型数的常量指针`a`,`a`一旦被赋值后...

    Project组织应用

    void aMAX_MIN_AVE(int *a, int n, int &max, int &min, int &aver) { max = min = a[0]; // 初始化 int sum = 0; for (int i = 0; i ; i++) { sum += a[i]; if (a[i] > max) max = a[i]; if (a[i] ) min = a...

    (int)a:与(int&)a

    根据给定文件中的标题、描述、标签以及部分内容,我们可以从中提炼出有关`(int)a`与`(int&)a`的关键知识点。 ### (int)a: 强制类型转换 #### 定义 `(int)a`是一种**强制类型转换**的用法,即将变量`a`的值转换为...

    C++ Primer中&、*符号的多重定义与int *p和int* p的区别讲解

    C++ Primer中&、*符号的多重定义与int *p和int* p的区别讲解 C++ Primer中,&和*符号具有多重定义,它们可以用作表达式里的运算符,也可以作为声明的一部分出现。符号的上下文决定了符号的意义。在声明语句中,&和*...

    环型队列的基本操作 源代码

    ①进队操作,返回1为队满 EnQueue(int *queue,int maxn,int *head,int *tail,int x) ②出队操作,返回1为队空 DeQueue(int *queue,int maxn,int *head,int *tail,int *cp) ③输出队列中元素 OutputQueue(int *...

    **p与 *&p的区别, 即指向指针的指针和引用指针变量的区别

    例如,当我们声明int& r = x时,r就是x的一个引用,对r的任何操作实际上就是对x的操作。 进一步地,*&p表示的是指针变量p的引用,它等价于*p = &p,此时&是引用声明符,表明我们定义了一个引用,其名称为*p,它引用...

    C语言中指针 int *p=0;和int *p;*p=0;和”&“的关系和区别详解

    当我们讨论`int *p=0;`和`int *p;*p=0;`以及"&"的关系和区别时,我们需要深入理解指针的声明、初始化、解引用以及取地址操作。 首先,`int *p=0;` 这行代码声明了一个指向整型变量的指针`p`,并将其初始化为NULL或0...

    浅析int*p[ ]与int(*p)[ ]的区别

    在C++编程语言中,`int*p[]` 和 `int(*p)[ ]` 都涉及到指针和数组的结合,但它们表示的概念是不同的。理解这两者的差异对于编写高效的C++代码至关重要。 首先,让我们来看`int*p[]`。这是一个指向整型(int)的指针...

    java算法分析与设计之矩阵连乘问题源代码

    java算法分析与设计之矩阵连乘问题源代码 算法作为计算机专业学生的必修课,同时也是软件开发过程中必备的编程思想,对学习研究计算机专业意义重大;正因为这门课程难,所以除了相关方面的书籍,网络资源少的可怜,...

    深入const int *p与int * const p的区别详解(常量指针与指向常量的指针)

    对于指针和常量,有以下三种...常量指针(Constant Pointers) 代码如下:int * const p先看const再看* ,是p是一个常量类型的指针,不能修改这个指针的指向,但是这个指针所指向的地址上存储的值可以修改。实例1: 代码

    int triangleJudge(int a,int b,int c)三角形判断

    根据给定的信息,本文将详细解释“int triangleJudge(int a,int b,int c)”函数的实现原理及三角形类型的判断逻辑。 ### 函数介绍 #### 函数定义:`int triangleJudge(int a,int b,int c)` 该函数接收三个整数参数...

    cpp代码-函数返回值:值传递 指针传递 引用传递 (返回值 返回指针 返回引用) int Fun(int a); int *Fun(int a); int &Fun(int a); (别名)

    例如,`int &Fun(int a)` 中的`a`是一个引用,它绑定到调用时的实参,对`a`的修改会直接影响到原始变量。引用传递通常用于避免值复制的开销,特别是在处理大型对象或需要修改参数的情况。 4. 函数返回值:返回值、...

    c++中vector<int>和vector<int*>的用法区别

    `vector<int>`和`vector<int*>`看似相似,但在实际使用中有着显著的区别,这主要涉及到内存管理和数据存储方式。 首先,`vector<int>`用于存储整型值。在这种情况下,`vector`会负责元素的内存分配和释放。当你通过...

    程序员面试宝典题目总结

    - `int (*a)[10]` 表示 `a` 是一个指向含有10个整数元素的数组的指针。 - `a++` 使 `a` 指向下一个这样的数组。 --- #### 14. 数组指针运算 **题目描述:** ```cpp int a[] = {1, 2, 3, 4, 5}; int *ptr = (int *...

    Hce300B 动态连接库

    1、int ReadCard(int portnumber,int tracknumber,int timeout,unsigned char* track1,int* track1len,unsigned char* track2,int* track2len,unsigned char* track3,int* track3len) 2、int WriteCard(int port...

Global site tag (gtag.js) - Google Analytics