C语言中的int * p的理解?

作者&投稿:衅轰 (若有异议请与网页底部的电邮联系)
int *(&p) 怎么理解啊??~

int *(&p)是指针变量的引用。 指针变量同普通变量一样,使用之前不仅要定义说明,而且必须赋予具体的值。未经赋值的指针变量不能使用,否则将造成系统混乱,甚至死机。指针变量的赋值只能赋予地址,决不能赋予任何其它数据,否则将引起错误。
  引用就是给变量起个别名 ,这种变量必须初始化 。
  如int *a = &b; int *(&p) = a;
  p不占用内存,它只是a的别名,就像一个人两个名字而已。 所以p指针所指向的内容与a指针所指向的内容相同,即*a == *p;
  p在内存中存放的地址与a在内存中存放的地址相同,即 &p == &a。

这个p是定义的二级指针变量,即“指向指针的指针”。

如果要连续定义两个指针应该是怎样做呢?
如果是第一种理解,则为:
int* p,q;
但是测试结果,p是int指针,而q是int类型,不是指针。
所以第一种理解错误,实际上要连续定义两个指针必须:
int *p,*q;
所以这样看第二种理解更靠谱一些,虽然我感觉还是有些牵强,因为这句
“而&*p为对p取地址,&和*抵消了”
在使用p的时候是不需要用&的

int *p 字面理解 整型的指针p, 指针本身只有4字节的大小,它负责 在程序需要某块值的将程序引导到那个位置。
想想p &p &*p的区别, 先不要赋值打印一下,然后赋值打印一下,你就明白了。
自己试下~~

不行 p是一个存 int 型的指针 变量 ,p 首先是变量,*p 是那个你要存的int 型的值,&*p
为那你要 若 有一个int型的变量 int a; &*p == &a == p == &(*p);

int* 为类型,就像你定义一个结构体,然后可以定义结构体类型的变量一样,但是像这种复合型的类型,是不能够同时定义多个的,比如int* a,b的话就只有a是一个地址变量,而b是整形变量 ,需要int* a,*b方可。

1.p只是一个变量名字,它的类型是int *,32位机器上它占用4个字节,它的值是一个地址。
2.正确。


焦作市15696725156: C语言中int * p;的含义 -
函全滋心: 在c语言中 * 是指针运算符. *p表示指针变量p所指向的变量的值.即p中存储的内存地址 所存储的变量的值. 另外 容易混淆的地方是; 定义一个指针变量p时,如 int *p; 表示定义了一个指向整型变量的指针变量p. 望采纳.

焦作市15696725156: c语言中,int **p;的含义是?简明回答,最好有解释,谢谢 -
函全滋心: int **p 就是 int * (*p) 显然,*p是一个指针,编译器也得给它安排4字节的内存来存储它的值,int **p就是指向这块内存的指针,它的字面值就是这块内存的首地址

焦作市15696725156: C语言高手请指教:"int **p"是什么意思啊 -
函全滋心: int a; int *p = &a; int **pp = &p; 明白了吧?p 是一个普通的指针,它指向普通变量 pp 是一个指向指针的指针.

焦作市15696725156: C语言中int *(*p)()是什么含义?? -
函全滋心: 1int* (*p)(); 声明了一个指向『"接受void参数,返回int*"的函数』的指针

焦作市15696725156: C语言*p是什么意思 -
函全滋心: 这个是指针p,就是一个指向某个地址的指针,他没有存储空间,只是一个指针

焦作市15696725156: 在c语言**p是什么意思 -
函全滋心: 二重指针. int **p; 可以用来表示二维数组, p=(int**)malloc(sizeof(int)*m);//m is the row for(int i=0;i<m;i++)p[i]=(int*)malloc(sizeof(int)*n);///n is the col

焦作市15696725156: c语言中int (*p)(),请问这是什么意思??? -
函全滋心: 这是一个指向返回值为整型(int型)、无参数的函数的函数指针.

焦作市15696725156: c语言 语句“int (*p)();”的含义是 - ----. -
函全滋心: 选d.

焦作市15696725156: c语言中 int *p; 是管p叫指针变量,还是管*p叫指针变量? -
函全滋心: p叫指针变量.int *p,其实int *是一部分,p是后半部分

焦作市15696725156: int *p = 100 这段文件C语言的代码的意思 -
函全滋心: 意思是把内存中编号为100的内存空间地址赋给指针变量p 建议不要这要用....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网