| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2121 人关注过本帖
标题:指针变量是否能赋常量,指针变量不是只能存放地址吗?看书中例题有疑问想请 ...
取消只看楼主 加入收藏
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:5 
指针变量是否能赋常量,指针变量不是只能存放地址吗?看书中例题有疑问想请教各位达人前辈。。
//这是书上的例题(谭浩强指针例题9.6)。是说指针的。本人看了有疑问想各位前辈达人指教。。。
 main()
{
     int * p,i,a[10];   //* p是定义了一个指针变量
     p = a;  // a 是数组名代表数组首地址,并将 a 赋值给指针变量 p
     for(i = 0;i < 10; i++)
         scanf(" %d",p++);   // 输入数组各项的值。这都看懂了。问题是。p 是指针变量。指针变量不是真能存放地址吗。怎么可以赋 (%d)整型值呢?
     printf("\n");
     for(i = 0;i < 10; i++,p++)
         printf(" %d",* p);//  * p是指针变量 p 所指向的内存单元也能理解。就是上面的一下想不明白。请各位前辈达人指教!!!!
}
2015-10-30 10:50
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
回复 2楼 TonyDeng
我问过函数返回值的问题。没问过指针赋值问题。请问两个有联系吗?请多多指教。
2015-10-30 11:01
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
回复 5楼 TonyDeng
关于scanf函数的使用并不清楚。对于embed_xuel的提问我也是知道什么说什么。关于scanf函数是由指针编写的这点。我也是回答了embed_xuel的提问后想到的。原先只知道scanf函数是有其他高手编写放库函数里,可以被我们使用。请你为我说一下scanf好吗?
2015-10-30 11:13
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
回复 5楼 TonyDeng
你的意思是 &a[i] 和 p++ 是相等是吗?
1.——>.& 是取地址符。取 a[0] 的地址,再用 scanf 函数赋值给啊 a[0] .i++, i == 1 .
2.——>.& 是取地址符。取 a[1] 的地址,再用 scanf 函数赋值给啊 a[1] .i++, i == 2 .
3.——>.& 是取地址符。取 a[2] 的地址,再用 scanf 函数赋值给啊 a[2] .i++, i == 3 .
.........
"p++" p 是指针变量,它直接指向地址。通过它的自加直接赋值。和上面的取地址,再赋值后,自加。是一样的。是这样的吗?
2015-10-30 11:22
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
回复 9楼 TonyDeng
十分感谢!
2015-10-30 11:29
朔源
Rank: 1
等 级:新手上路
帖 子:105
专家分:4
注 册:2015-9-22
收藏
得分:0 
回复 12楼 TonyDeng
道理懂了。现在需要消化一下。你解释的很好。。。感谢。。。
2015-10-30 12:34
快速回复:指针变量是否能赋常量,指针变量不是只能存放地址吗?看书中例题有疑问 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022353 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved