㈠ c语言函数参数里的取地址符号是什么意思
顾名思义,取地址符的用处 就是取它的地址,而编程过程中,取的都是变量存放在内存中的地址,通过地址可以直接访问到存放在该地址里的数据。
㈡ C语言中地址操作符、指针操作符分别是什么
&是地址操作符。
e.g.
int a;
int *b;
b = &a; //&就是取a的地址,即是地址操作。
*是指针操作符,可以声明指针,也可操作指针所指的数据;
int *p;
*p = 10;
㈢ C语言 指针运算符,地址运算符是怎样工作的
我把“*”和“&”这两个运算符做了较详细解释。这段代码你可以拷贝到VC/VS工程中看,我不知道你学过计算机硬件知识没,如果你学过硬件的一些基础知识,就比较容易理解。不过没学过也可以理解。如果你不明白就再问
int main()
{
int arr1 = 12, arr2 = 15;
char ch1 = 'b', ch2 = 'h';
float f1 = 3.14, f2 = 3.15;
/* “*”地址运算符解释 */
/* 定义三个指针,这三个指针分别指向不同的数据类型 */
/* 注意:此处的“*”指针运算符是为了说明我们定义的变量是一个指针变量 */
int *p_arr = &arr1; //指针变量p_arr中存放的是arr1的地址
char *p_ch = &ch1 ; //指针变量p_ch中存放的是ch1的地址
float *p_f = &f1 ; //指针变量p_f中存放的是f1的地址
/* 注意:此处的“*”指针运算符是为了操作指针p_arr指向的元素 */
*(p_arr) = 30; //等价于把变量arr1赋值为30
*(p_ch) = 'c'; //等价于把变量ch1赋值为字符'c'
*(p_f) = 90.89; //等价于把变量f1赋值为浮点数90.89
/* “&”地址运算符解释 */
p_arr = &arr2; //把变量arr2的地址赋值给p_arr
p_ch = &ch2; //把变量ch2的地址赋值给p_ch
p_f = &f2; //把变量f2的地址赋值给p_f
return 0;
}
㈣ c语言中取地址符和*有什么区别
区别如下:
(1)两者根本意义不同。*是指针的意思,而&是去地址的意思,这两个相辅相成。
(2)用法不同。高级的c语言都是动态开辟内存,是使用malloc和free,这时就不用&了,因为取引用都是对于栈上的数据,在数据结构中,都是在堆上开辟数据容量。
(3)语言规则不同,变量类型加*就是一个指向该变量类型的指针,通俗点说,指针就是可以通过地址修改和获取该变量的值,而&符号只是获取该变量的地址!
指针中的“取地址符”
(4)c语言地址符是干什么扩展阅读:
引用的声明符放置在变量名的前面,和*操作符的用法一样。
引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,且不能再把该引用名作为其他变量名的别名。ra=1; 等价于 a=1;
声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。
故:对引用求地址,就是对目标变量求地址。&ra与&a相等。
#include<iostream>using namespace std;int main()
{ int m[10]={1,2,3,4,5,6,7,8,9,10}; int (&n)[10]=m; for(int i=0;i<10;i++) cout<<m[i]<<' ' ;
cout<<endl; for( i=0;i<10;i++) cout<<n[i]<<' ' ; cout<<endl; return 0;}
例如:
int*pointer;//建立一个指针
int*&p1=pointer;/*
正确,编译系统把"int*"看成一体,把"&p1"看成一体,即建立指针pointer的引用,就是给指针pointer起别名p1。
int&*p2=pointer;//错误,这就变成了引用的指针。
㈤ C语言中地址符究竟是什么
简单说,
scanf
要求参数是地址.
因为,
要耐携侍修改数据,必须传递地址隐镇或引用昌吵.
㈥ c语言&是什么符号,代表什么
c语言&符号有三种含义:
1、&符号是指取地址符,是单目运算符。野尘
当你定义一个变量a,那想知道变量在内存中的地址,就可以使用这个符号。这个符号就是指取址,在C语言指针这一章中非常常用。
2、&符号是位运算符,表示“按位与”,是双目运算符。
&符号还可以表示“按位与”。在计算地址的时候,都雹歼是二进制数了,如果两个操作数该位上的值均为1,那结果计算的位置上结果就是1,否则结果就是为0。
3、当两个&符号同时使用,即&&符号,代表逻辑运算中的逻辑与。
&&符号可以代表逻辑运算中的逻辑与。在“与或非”中,&就是指两个比较的对象,如果一真一假,那结果就是0,如果两个比较都是真,那就是1,如果两个都是假的,那结果就是0。
c语言基础知识:
main函数:每个C语言程序中main函数是有且只有一个。读程序都要从main()入口,然后从最上面顺序往下读(碰到循环源脊冲做循环,碰到选择做选择)。
存储形式:计算机的数据在电脑中是以二进制的形式保存。最低的存储单元是bit(位),位是由为0或者1构成。
㈦ 地址符的作用,地址符是什么意思
真说不清楚。教科书通常会把&符号解释的很细。 真正要理解了你需要知道汇编的一点儿原理,知道地址是什么意思。然后还要知道C语言的编译原理。
如果都不知道,就按教科书上的死记硬背就可以了。简单的说很多东西,它是一个指针指向的东西。 如果要表达这个东西就用一个名子,编译器会自己分配地址运算。 如果用取址符,则编译后运算的对象是这个地址本身。
比如函数指针陵薯。
另一个情况是传递参数。通常传递的参答昌数尺举者都是常数。 不过如果你传递的是地址,再用地址去引用变量的位置,就可以修改变量了,这样函数退出后,结果就保留下来了。这就是地址引用参数最广的用法。
㈧ c语言取地址符有什么用,为什么scanf一定要用&
取地址符的作用是告诉系统定义的变量的值存放在内存空间的地址,scanf函数就根据这个地址值寻址,然后从这个地址空间中取出我需要的数据值,对于变量来说,只能通过&a的方式获取到该变量在内存中的地址,对于指针变量和数组,就不需要这个取地址符了。代码说明如下:
//变量
inta;
scanf("%d",&a);
//指针
inta,*p;
p=&a;
scanf("%d",p);
//数组
inta[10];
for(inti=0;i<10;i++)
scanf("%d",a+i);//a+i<===>&a[i]
㈨ c语言中,指针和取地址运算符到底是什么啊,能不能通俗一点讲啊,谢谢
关于指针,统统都是在说内存的事情,内存就像一个大楼,每个格子都有一个门牌号,也就是地址。取地址符的作用就是得到内存中某一段内容的门牌号,以供后面的需要。指针就是通过一个门牌号找到这个内容,跟取地址是一对