求C语言大神来帮帮小弟

要是写指向i的地址,直接写p=&i不就好了,为什么还要加上*号,纠结中。。例(inti,*p=&i;)... 要是写指向i的地址,直接写p=&i不就好了,为什么还要加上*号,纠结中。。 例(int i,*p=&i;) 展开
 我来答
hutaoooooo
2012-03-12 · TA获得超过441个赞
知道小有建树答主
回答量:747
采纳率:0%
帮助的人:393万
展开全部
int i,*p=&i 中,同时进行了声明和赋值,相当于
int i;
int *p; /* 声明p为指向整数的指针 */
p=&i; /* 赋值 */
r1renhw
2012-03-12 · TA获得超过1577个赞
知道小有建树答主
回答量:810
采纳率:100%
帮助的人:458万
展开全部
简单说一下:

int i;
这句的功能是操作系统为变量i
在内存中开辟一块空闲的存储空间
以后使用i就相当于访问该存储空间

注意访问该存储空间就相当于使用该存储空间里的数据,
又因为你定义的是int类型所以这个数据也是int类型

而&i表示i的地址,也就是操作系统为i所分配的
那块存储空间的第一个字节的编号,也就是C中的指针
因为现在里面存的值是int型,
所以这个编号是int * 类型
所以你想把这个编号赋给另一个变量时,
也就是本题中的p,那么p变量也
应该是int * 类型,而不是int类型

仅供参考!呵呵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淦海瑶s1
2012-03-12 · TA获得超过3646个赞
知道大有可为答主
回答量:3341
采纳率:100%
帮助的人:908万
展开全部
指针赋值有两种固定格式
一个是在申请变量的时候就赋值int i,*p=&i
一个是申请完变量,在赋值int *p; p=&i;
这两种方式都对
第一个,要是不加*,不知道p是指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千岛j玉叶
2012-03-12 · TA获得超过854个赞
知道小有建树答主
回答量:331
采纳率:0%
帮助的人:147万
展开全部
因为你是在声明的时候赋值的,在声明的时候加了*才代表这是一个指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
变相怪麒
2012-03-12 · TA获得超过381个赞
知道答主
回答量:89
采纳率:0%
帮助的人:32万
展开全部
简单的说*号是为了说明,此变量是指针变量,可以理解为一种专门存指针的变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奕帆新一
2012-03-12 · 超过62用户采纳过TA的回答
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:97.8万
展开全部
这是指针的固定模式!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式