C语言指针,如果p=&k,则p是指针变量,那么*p也可以看做指针变量?形参为啥可把*p看做指针变量啊?

*p在形参定义时看做指针变量,下面函数执行时*p又看做一个值,这怎么看?... *p在形参定义时看做指针变量,下面函数执行时*p又看做一个值,这怎么看? 展开
 我来答
金色潜鸟
2014-02-11 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5733万
展开全部
注意分清 语句和声明。
外貌都是 *p, 在语句 和 在声明 意思不同。
------------------------------
p=&k; 这显然是语句。语句里 &k 是变量 k 的 地址,能接受赋值的 p 是指针。
所以,它们的声明很可能是:
int k; int *p;
-------------------------------
形参 书写 是用 声明的形式,例如:
void add(int a, int b, int *p);
形参 int *p -- 用的是 声明的形式,p 是指针。
-------------------------------
声明为 int *p; // p 是 指针 变量
语句中 *p 是 指针指向的值,p 是 地址。
k = 20;
p = &k; // 地址
printf("%d\n", *p); // 打印数值
printf("%p\n", p); // 打印地址
*p = 10; // 值
a = *p; //值
Alan_Turing__
2014-02-10 · TA获得超过1201个赞
知道小有建树答主
回答量:369
采纳率:0%
帮助的人:417万
展开全部
指针在定义时使用 * 是为了把它和一般变量区分开
定义时:int *p
在使用时 *p是指指针变量p这个地址里面存放的值,*p不是指针变量,而是一个一般的值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cjsyr1990
2014-02-11 · TA获得超过657个赞
知道小有建树答主
回答量:894
采纳率:0%
帮助的人:390万
展开全部
简单的说在起初主函数定义是必须 *p=&k
之后使用p就是指针变量,*p是个变量,
在函数调用中如果实参是p(指针变量),则形参对应是个指针
例如 *a(形参列表指针)=p(实参列表指针) 等于 *p(形参列表指针)=p(实参列表指针)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
White_MouseYBZ
2014-02-11 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6686万
展开全部
谁说的形参int *p中*p是指针?*是int的,不是p的,int *p是说p是int *型指针,而不是说*p是int型变量!变量都得以下划线或字母开头你忘了?以*开头怎么会是合法标识符!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sunchy12345678
2014-02-11 · TA获得超过665个赞
知道小有建树答主
回答量:443
采纳率:100%
帮助的人:346万
展开全部
int *p;
求解如何将*p看成一个指针变量。怎么看都只会是一个int。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式