c语言指针初学者,请问可不可以帮我详细解释一下下面截图程序的意思

*pa 、 pa 都什么意思啊,谢谢

a:10 这个a的变量的值,这个没什么好说的

*pa:10 这个pa是int指针,指向int类型的指针,并且它在定义的时候指向了a的地址(int *pa=&a),所以*pa就是a,所以也是10
&a:12ff44(hex) 这个表达式&a是取a的地址的意思,地址就是一个内存的位置,定义了变量之后,我们不用关心这个地址的具体值。
pa:12ff44(hex) 准确地说,pa叫做指针变量,其中保存的是内存地址,就像a是int变量,其中保存的是int数一样。pa的值由于初始化为&a,所以和&a输出的值是相等的。
&pa:12ff40(hex) 这个和&a一样,也是取pa这个变量的地址。指针变量作为一个变量,也是有地址的,只不过是保存的数据的含义不一样,这个地址的值肯定和&a不同,因为是两个变量。一个萝卜一个坑,一个变量占一个地址。至于为什么地址值比较接近,是因为定义在同一个函数里的局部变量在地址空间上是连续的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-27
pa 是一个int 型的指针,它指向的是 a 的地址, int *pa = &a;

*pa 表示的是pa所指向的地址里面的内容。 也就是 a的值 10追问

那&pa呢?

追答

&pa 表示的是 指向pa 这个地址的指针。

第2个回答  2013-11-27
pa 是一个int 型的指针,它指向的是 a 的地址, int *pa = &a;

&是取地址符,分开写int *pa;pa=&a;pa里存a的地址。*pa就指向a的内容10;这里地址是指变量a在内存中的地址。&pa是指pa的地址。

c语言指针初学者,请问可不可以帮我详细解释一下下面截图程序的意思
pa:10 这个pa是int指针,指向int类型的指针,并且它在定义的时候指向了a的地址(int *pa=&a),所以*pa就是a,所以也是10 &a:12ff44(hex) 这个表达式&a是取a的地址的意思,地址就是一个内存的位置,定义了变量之后,我们不用关心这个地址的具体值。pa:12ff44(hex) 准确地说,pa叫做指针变量...

问两道有关c语言字符指针的问题,请将程序每一步的意思告诉我,谢谢啦
第一题答案:B。理由:*s与*t都是取出此时地址存储的值,while()语句里面的意思是,当指针s与t都不为空并且s指向的值等于t指向的值。。。当s或者t为空或者t与s指向的值不同时,while()结束,返回此时s指向的值减去t指向的值,所以为比较两个字符串的大小;第二题答案:A。理由:x的地址赋值...

C语言,指针问题,请帮我解释一下得出结果的过程。
比如 main函数中 变量a的地址为0x0001,该地址存的值为0;变量b的地址为0x0002,该地址存的值为1;main函数把a的地址和b的地址传给 swappointer 的指针a和指针b 指针a指向地址0x0001,指针b指向地址0x0002 在swappointer函数中将0x0001的值和0x0002的值进行交换 0x0001的值为1,0x0002的值为0 结...

什么是C语言的指针,能不能举例说明一下啊?大侠帮帮忙!!
指针的值是指针本身存储的数值,这个值将被编译器当作一个地址,而不是一个一般的数值。在32位程序里,所有类型的指针的值都是一个32位整数,因为32位程序里内存地址全都是32位长。 指针所指向的内存区就是从指针的值所代表的那个内存地址开始,长度为si zeof(指针所指向的类型)的一片内存区。以后,我们说一个指...

C语言指针问题(初学者)
1.概念问题:指针是指存放地址值的变量或常量;指针与一般变量或常量的区别,在于它不直接存储数值,而是存放被存储数值的地址,属于间接存放,所以不少初学者感觉学习困难。比如:int a=2,b,c,*ptr; ptr=&a;表示将指针ptr指向变量a,存放a的地址,假设是2000H,而指针变量ptr本身也要有地址,假...

c语言指针问题求详细过程
图片中讲解了程序运行过程,希望能帮助你加深对指针的理解。#include <stdio.h>f(int *a, int *b, int *c) {int *t;t=a;a=b;b=t;*t=*b;*b=*c;*c=*t;}main() {int a=5,b=7,c=3;int *p1=&a,*p2=&b,*p3=&c;f(p1,p2,p3);printf("%d,%d,%d",a,b,c);} ...

c语言 什么是行指针 求大神详细解释。
我们在使用c语言进行编写程序的时候,就一定会使用上指针,指针的操作是编写程序的一个点。如何更好的使用指针,将是我们进行更好的书写程序的关键。这里,小编就分享一下自己在使用c语言编程过程中,对于指针的理解:1:指针是一个地址,指向的是个类型:我们知道,c语言中的类型有int,char,bool(...

C语言中指针一章没学好,调试一个程序时,查看一个变量,不懂里面的意思...
p定位到Sq数组的第n个元素,q定位到Sq数组的最后一个元素.for的作用是把p到q之间的元素都往前移动一个位置,实际上是:L.elem[n-1]=L.elem[n];L.elem[n]=L.elem[n+1];...L.elem[L+L.length-2]=L.elem[L+L.length-1]说白了就是删除顺序表L的第n个元素而已,无它。

C语言中的问题不明白为什么 新人麻烦详细解释一下谢谢
这里scanf指定逗号为输入的分隔符号。所以输入时数字和字符之间必须有逗号。scanf不指定分隔符时,默认以空白字符(空格、回车、制表符)为分隔符。PS:如果写%d%c不指定分隔符号。由于第二个变量是字符型,输入时中间不要加空格符,否则会将空白符号做为字符接收。

C语言指针解释一下啊
C语言中每个变量都有内存地址 而 & 操作符就是用来获取变量的内存地址的。例如变量a的地址是123,那么&a的值便是123,而a的值可以是任意的。指针是用来保存变量的地址的,指针本身的值就是另外一个变量的地址。所以在你的图中,p的值是a的地址&a,而&p是指针自己的地址。而*操作符,是用来获取...

相似回答