C语言中 *与& 在指针及数组中的含义 望详细具体
发布网友
发布时间:2024-01-06 03:47
我来回答
共5个回答
热心网友
时间:2024-08-09 14:38
& 是取某个变量的地址
* 则是 &的逆运算,即取某个地址上存放的值
*********举个例子*********
一个整数int a = 2;
比如你再定义一个指针int *p = &a;
此时p就是a的地址,就是&a
*p就是取p地址上的值,就是a
*******************************
数组也是一样的
只不过数组名表示一个数的地址而已~
*********举个例子*********
有个数组a[10]
a[0]存放在地址为1000的地址位上
那么a就等于1000
因为在数组中a就等价于&a[0],即第一个元素的地址&a[0] = 1000
然后*号是&号的逆运算
而*a就是*&a[0],所以*与&一正一逆抵消,所以*a = *&a[0] = a[0]
*******************************
热心网友
时间:2024-08-09 14:39
一个表地址,一个表内容。。
热心网友
时间:2024-08-09 14:40
&有两个作用,其一是按位与,其二是取址。
*运算符比较复杂,即可以用在变量定义的语句中,也可以用在赋值、间接取值语句中,恰恰其所处的位置不同,从而用途、意义也不同,有时会使人混淆。
int i,iArr[5];
在scanf()函数中读入数组元素时,应该这样写
for(i = 0;i < 5;i++) scanf("%d",&iArr[i]);
也可以这样写
for(i = 0;i < 5;i++) scanf("%d",(iArr + i)); // VC++6.0环境下可以正常运行
for(i = 0;i < 5;i++) printf("%d ",iArr[i]); // 数组下标索引法
for(i = 0;i < 5;i++) printf("%d ",*(iArr + i)); // 间接取值法,或指针法
热心网友
时间:2024-08-09 14:44
*p是取指针p处的数值。此时的p一般是一个指针变量。
&p是取变量p的内存地址。此时的p一般是一个数值变量(整形、字符型,结构)。
热心网友
时间:2024-08-09 14:42
&符号是取变量的地址,
*可用来申明指针变量类型,并且可以使用*取得该指针变量指向的地址中保存的内容
数组变量中保存的是下标为0的元素的地址 即: int nums[]={1,2,3}; nums==&nums[i] 返回true
C语言中 *与& 在指针及数组中的含义 望详细具体
一个整数int a = 2;比如你再定义一个指针int *p = &a;此时p就是a的地址,就是&a p就是取p地址上的值,就是a 数组也是一样的 只不过数组名表示一个数的地址而已~举个例子 有个数组a[10]a[0]存放在地址为1000的地址位上 那么a就等于1000 因为在数组中a就等价于&a[0],即第一个元素...
C语言中&和*分别是什么意思?
1. &是C语言中的取址运算符,用于获取一个变量的地址。例如,声明一个整型变量a后,编译器会在内存中为其分配一个位置,这个位置即是a的地址。使用&操作符可以获取该地址,例如,`&a`将得到a在内存中的位置。2. *是C语言中的指针运算符,它用于访问或修改一个变量的值,通过其地址来操作。例如...
C语言 中&和 *分别是什么意思?
是指针运算符,作用与&相反,它是根据变量的地址取出变量的值。比如,*a的值就是变量a的值3。下面是定义和声明中用到指针的小结 int *p; 定义一个指向整型数据的指针。int *p[n]; 定义指针数组p,它由n个指向整型数据的指针元素组成。int (*p)[n]; p为指向含n个元素的一维数组的指...
c语言中的*与&是什么意思?
是指针运算,&是取地址。*后面必须是指针变量,&后面则什么变量都可以(除了常数)。c语言 C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,...
C语言、二维数组指针中的 * 和 &
比如,一维数组a[9],a就代表数组首个元素的地址即首地址,a[0]是首个元素而&a[0],你可以把&理解成取地址符,即取出存放该数的地址,那么&a[0]就代表数组首个元素的地址了,即首地址,即a和&a[0]是一个意思,在看二维数组,二维数组只是比一维数组多了一个“首地址”,即列的首地址,...
c语言中取地址符和*有什么区别?
1,符号含义不同:&是取地址运算符,&a为变量a的地址。2,用法不同:声明中 int x; x 是整型量。语句中,&x 是整型量x的地址。不是指针,才有&。语句中,x 是整型量x的值。3,指向不同:*是指针运算符,*p为指针变量p所指向的存储单元中的内容。而指针变量p中一般只存放地址。* 表示...
&在C语言中表示什么意思?
&在C语言中可能表示两种运算符。1、如果运算对象只有一个,且为右操作数,那么&为取地址运算符,结果为操作对象的地址。例如&a(假设a是一个左值,即具有具体的可访问的地址)结果为a的地址。2、如果运算对象有两个,那么&表示位与运算。结果中的每一个二进制位等于两个运算数的对应位置的二进制位...
亲,C语言中指针的定义和引用以及赋值时候“*”都表示什么含义啊
在C语言中,定义一个普通的变量(如整型数),我们这样做:int i; 而定义一个指针变量(指针)我们需要这样做:int *p ; 还记得吗,一个矩形中的值是有类型的,可能是整型,可能是字符型……,它们原本是“清白”的,无类型的,是我们通过一些手段使它们有了类型。当我们做出int i; 这样一个...
&在c语言中是什么意思
一、地址运算符的基本含义 在C语言中,"&"符号被用作地址运算符,用于获取变量的内存地址。当我们在程序中声明一个变量并为其分配内存时,每个变量都有一个与之相关的内存地址。通过使用"&"运算符,我们可以获取该变量的内存地址。二、"&"在表达式中的使用 在表达式中,"&"可以用于获取变量的指针或...
c语言中&起什么作用
在C语言中,`&` 运算符的作用取决于上下文。1. 在函数参数列表中,`&` 用于获取变量的地址。例如:```c void func(int *p); // 声明了一个接受整数指针的函数 ```这里,`*p` 表示指针 `p` 所指向的地址中的值。2. 在数组声明中,`&` 不是必须的,但可以用来获取数组的地址。例如:``...