C语言中指针*p=*q与p=q有什么区别
7个回答
2013-07-15
展开全部
*p=*q 是指向地址
p=q是指向值
p=q是指向值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呃⋯⋯第二个前面无运算符相当于p,有运算符且p是函数名或函数指针时,加括号相当于p,不是则无意义,p是函数名且返回指针且是调用时,不加括号是返回的指针的间接引用,第一个p不是指针的话无意义,如果是指针(什么指针都行,包括函数指针等不常用的,但不能是野指针,运行时会报错),如果这个表达式前面是运算符号,相当于p,如果前面是另一个表达式,是*p与那个表达式位与,p是函数指针时加括号相当于p,p是函数指针或函数的二级指针且该函数返回引用时是返回的引用的内存地址。(呼!累死我了,给个满意啊!看不懂的话等我有时间弄个表格)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询