| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 824 人关注过本帖
标题:【求助】关于指针的问题
只看楼主 加入收藏
yh19880108
Rank: 2
来 自:陕西
等 级:论坛游民
帖 子:34
专家分:24
注 册:2010-1-23
结帖率:80%
收藏
已结贴  问题点数:20 回复次数:9 
【求助】关于指针的问题
本人 新学c语言对一些问题不太懂, 请高手们指点 指点
#include <stdio.h>
main()
{
      int *p1,a[10]={1,3,5,7,9,11,13,15,17,19};
      for(p1=a;p1<=a+4;p1++)
      printf("%d" ,(*p1)++);
      printf("\n");
      getch();
}
这里的(*p1)++的值这么和 *p1的一样啊??
 (*p)--的值和*p1的值也是一样啊??
  书上不是 说的是(*p1)++或是——; 表示p1指向的元素加或是减啊!!
这么 这里的值是一样的呢!
   我这两天 所剩不多了 请高手们见谅, 给予帮助!
 谢谢
搜索更多相关主题的帖子: 指针 
2010-02-02 15:29
曼珠沙华
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:121
专家分:98
注 册:2009-5-21
收藏
得分:0 
理解好a++和++a
你就知道了。。。

走过了,却留下了痕迹。伤过了,却是一种无奈。人生只不过是一种擦肩而过的过程。
2010-02-02 16:13
wuqian860519
Rank: 1
等 级:新手上路
帖 子:2
专家分:1
注 册:2010-2-2
收藏
得分:0 
2楼正解
2010-02-02 16:45
heartnheart
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:335
专家分:1096
注 册:2009-7-10
收藏
得分:0 
(*p1)++是先取出p1的值,参与运算。如在printf("%d" ,(*p1)++);中是先把(*p1)打印出来然后让(*p1)自增一
2010-02-02 17:09
yh19880108
Rank: 2
来 自:陕西
等 级:论坛游民
帖 子:34
专家分:24
注 册:2010-1-23
收藏
得分:0 
可是    试过 了啊
    他(*p1)++ 的 值 和  (*p1)的 值 一样啊 !!
   对这 个 就是  狠 不 明白
2010-02-02 17:16
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:606
专家分:2499
注 册:2009-4-8
收藏
得分:20 
你可以这样试下
int a = 0;
cout << a++;
cout << a;
稍微深入点就另外再写个
int a = 0;
cout << ++a;
cout << a;
你试下就能明白上面几楼想让你明白什么。

迭代的是人,递归的是神。
2010-02-02 18:16
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:606
专家分:2499
注 册:2009-4-8
收藏
得分:0 
额补充下,cout << a;是输出 a 的值,你用你们 c 中的printf代替下。

迭代的是人,递归的是神。
2010-02-02 18:20
yh19880108
Rank: 2
来 自:陕西
等 级:论坛游民
帖 子:34
专家分:24
注 册:2010-1-23
收藏
得分:0 
不 好意思啊 !
     没 有涉及 到"<<"这 个 符号!!
  所以  不知道 应该 这么 用啊!!
 能不能 详细 点啊  谢谢
2010-02-02 19:09
曼珠沙华
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:121
专家分:98
注 册:2009-5-21
收藏
得分:0 
这里的<<是c++的符号。。。

[ 本帖最后由 曼珠沙华 于 2010-2-3 09:10 编辑 ]

走过了,却留下了痕迹。伤过了,却是一种无奈。人生只不过是一种擦肩而过的过程。
2010-02-02 21:29
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:606
专家分:2499
注 册:2009-4-8
收藏
得分:0 
C++:
int a = 0;
cout << a++;//就是打印出a++的值;
cout << a;

C:
int a = 0;
printf("%d", a++);//不知道我这样写对不对,你应该知道用C什么打印变量的值吧
printf("%d", a);
******************************
C++:
int a = 0;
cout << ++a;
cout << a;

C:
int a = 0;
printf("%d", ++a);
printf("%d", a);

迭代的是人,递归的是神。
2010-02-07 09:16
快速回复:【求助】关于指针的问题
数据加载中...
 
   



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

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