标题:请进看看这是什么原因
只看楼主
凌烟
Rank: 2
等 级:论坛游民
帖 子:30
专家分:41
注 册:2011-1-10
结帖率:66.67%
已结贴  问题点数:20 回复次数:5 
请进看看这是什么原因
#include<stdio.h>
void main()
{    int a,b,c;
    int *pa,*pb,*pc;
    *pa=a,*pb=b,*pc=c;/*这里正确的是pa=&a,pb=&b,pc=&c;还有这里怎么不用“;”用”,“也可以呢*/
    scanf("%d%d",pa,pb);
    printf("a=%d,b=%d\n",*pa,*pb);
    c=a+b;    printf("c=%d\n",*pc);
    *pc=a+*pb;    printf("c=%d\n",c);
    c=*pa**pb;    printf("c=%d\n",c);
    c=++*pa+(*pb)++;    printf("c=%d\n",c);
    c=(*pa)+++*pb;        printf("c=%d\n",c);
            printf("a=%d,b=%d\n",a,b);
    }
这样运行的话会出现如图所示的结果呢,本人菜鸟,老鸟勿笑,还请解释下,谢谢!
搜索更多相关主题的帖子: include 
2011-02-18 20:12
zjsxwc
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:252
专家分:601
注 册:2011-1-20
得分:5 
*pa=a酱汁很危险, 关于用逗号详见https://www.bccn.net/Article/kfyy/cyy/jc/200409/2_8.html

The tools I recommended:
GUI: CSharp(VS), QT;    Core Code: Plain C (Tiny C Compiler);    Web: Python, JavaScript;    Android: Java;    Embedded System: ASM&C (Linux)
2011-02-18 20:17
yangfanconan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:10
帖 子:397
专家分:541
注 册:2009-9-22
得分:5 
回复 2楼 zjsxwc
互相间没有交集,可以用。影响不大。但是不美观。你想啊, int A,B;
2011-02-18 21:13
凌烟
Rank: 2
等 级:论坛游民
帖 子:30
专家分:41
注 册:2011-1-10
得分:0 
这样赋值*pa=a,*pb=b,*pc=c;不是等价于pa=&a,pb=&b,pc=&c;吗?
2011-02-18 21:18
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
得分:5 
好凌乱的感觉,一般c语言中是不直接给指针赋值的

免费赠送河蟹一只
2011-02-18 21:20
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
得分:5 
指针未初始化就赋值,很危险的。

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-18 21:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-332403-1-1.html




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

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