C语言中 *c=&m和c=&m的区别

如题所述

"&"是取址运算符,取变量在内存单元中的首地址,“&”取地址运算符的操作对象必须是内存单元(如变量、数组元素等)。
“*”是间接访问运算符,间接访问指针所指向的对象,“*”运算符的操作对象必须是指针(地址)。因此:
*C=&m是把m在内存中的地址赋给c这个指针指向的变量
c=&m是把m的地址赋给c这个指针
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-03
(1)若是在定义中:
语句 int *c=&m,m=4;
表示指针变量c指向m的地址;
(2)若是在执行中;
int m=6,n=10,*c=&n;
* c=&m;
则表示取变量m的地址赋给指针c所指对象n 的值
即 n的值由10变为6;

而c=&m,则表示把变量m的地址赋给c
第2个回答  2012-05-03
*c=&m是把m的地址赋给c这个指针指向的指针或数值变量
c=&m是把m的地址赋给c这个指针本回答被提问者采纳
第3个回答  2021-03-29

c++语言是c语言发展起来的,所以继承了c语言几乎所有的特点,但c++语言又有自己的个性。c语言是一种面向过程的编程语言,而c++主要是面向过程的,因此c++有类的概念,而c语言就没有。c++的功能强大,编译器复杂,适合高端程序的设计和编辑,c语言的编译器简易,适合低端程序。

相似回答