C++中“*”和“&”在各方面的使用方法和区别是什么?
如题……是否*只是用在指针方面?有时候声明char的时候为什么后面加“*”?“&”的具体作用是什么呢?...
如题……是否*只是用在指针方面?有时候声明char的时候为什么后面加“*”?
“&”的具体作用是什么呢? 展开
“&”的具体作用是什么呢? 展开
5个回答
展开全部
*:
1.表示乘号 比如2*3=6
2./* */ 表示注释 /*我是注释*/
3.*指针 表示这个指针所指向的内容 比如p是一个地址,它指向的内存地址保存着整型的3,那么*p就是3;同时也可以对它进行赋值,*p=4;之后这个内存地址保存的就是4.
4.声明char* 表示声明的是一个字符指针 或者是一个字符串,它们是等价的。
&:
1.& 按位与 比如:011 & 101 = 001
2.&& 逻辑与 只用于bool值,比如 true && false = false
3.&变量 表示变量的地址。比如 int a= 0; 那么&a就表示a的地址。
4.声明中用到&,比如char& a;表示a是char类型的一个引用。主要用于参数传递,传值和传引用的区别很多教材都会着重讲的。
结合*的用法,那么*(&a)与a的效力相同。
1.表示乘号 比如2*3=6
2./* */ 表示注释 /*我是注释*/
3.*指针 表示这个指针所指向的内容 比如p是一个地址,它指向的内存地址保存着整型的3,那么*p就是3;同时也可以对它进行赋值,*p=4;之后这个内存地址保存的就是4.
4.声明char* 表示声明的是一个字符指针 或者是一个字符串,它们是等价的。
&:
1.& 按位与 比如:011 & 101 = 001
2.&& 逻辑与 只用于bool值,比如 true && false = false
3.&变量 表示变量的地址。比如 int a= 0; 那么&a就表示a的地址。
4.声明中用到&,比如char& a;表示a是char类型的一个引用。主要用于参数传递,传值和传引用的区别很多教材都会着重讲的。
结合*的用法,那么*(&a)与a的效力相同。
展开全部
*是解引操作符 &是取址操作符
比如
char a_char(0);//,定义一个char
char* ptr_char=&a_char;//定义一个char指针指向a_char,“&”你可以理
//解为取a_char的地址
char b_char=*ptr_char;//定义一个char,并且以ptr_char所指向的a_char
//作为其值,*是将ptr_char解引,取其指向的值
比如
char a_char(0);//,定义一个char
char* ptr_char=&a_char;//定义一个char指针指向a_char,“&”你可以理
//解为取a_char的地址
char b_char=*ptr_char;//定义一个char,并且以ptr_char所指向的a_char
//作为其值,*是将ptr_char解引,取其指向的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*是指针。&是引用。至于什么是指针,什么是引用,我想您去看看书或许更合理写,实在是一言难尽。
&的作用其实就是别名的概念(alias),一般情况,&和*通用,但是有些场合必须使用引用&。比如输入输出流作为函数的参数时,由于流可能不能被拷贝(比如cin,count),此时就必须使用引用。
&的作用其实就是别名的概念(alias),一般情况,&和*通用,但是有些场合必须使用引用&。比如输入输出流作为函数的参数时,由于流可能不能被拷贝(比如cin,count),此时就必须使用引用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*为提取指针指向变量的值
&为提取变量的地址
&为提取变量的地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*一般用于指针
&&指代“并”
&&指代“并”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询