美文网首页
C语言学习感悟(3)

C语言学习感悟(3)

作者: 一个冬季 | 来源:发表于2018-05-26 12:15 被阅读28次

    此次本章是掌握 ++( *p)和( *p)++的区别

    int main(void) {
        int a,b,c;
        int *pa,*pb,*pc;
        pa=&a;
        pb=&b;
        pc=&c;
        scanf("%d%d",pa,pb); //2  3
        printf("%d,%d",*pa,*pb); //2  3
        c=a+b;//5
        printf(",%d",*pc);//5
        *pc=a+*pb;//5=2+3
        printf(",%d",c);//5
        c=*pa**pb;//6=2*3
        printf(",%d",*pc);//6
        c=++(*pa)+(*pb)++;//c= 2+1  +   3
        
        //c=++a + b++;
        //D=++a;  a=a+1; D=a;  此时a=3 
        //E=b++;  E=b;  b=b+1;  此时b=4 
        //c=D+E;
        
        printf(",%d",c);//6
        c=(*pa)++ +(*pb)++;
        //c= a++ + b++;
        //D=a++;  D=a; a=a+1;
        //E=b++;  E=b; b=b+1
        //c=D+E  c=7
        printf(",%d",c);//7
        printf(",%d,%d",a,b);// 
        
        
        printf("\n");
        system("pause");
        return 0;
    }
    
    ++(p)和(p)++的区别.png

    我代码里面已经包含了注释,你们一定不要看错了,我的那些分解步骤啊,比如我这些注释

        //c=++a + b++;
        //D=++a;  a=a+1; D=a;  此时a=3 
        //E=b++;  E=b;  b=b+1;  此时b=4 
        //c=D+E;
    

    注意这里面的c的结果是c=D+E,此时的你不要揪着a和b了

    相关文章

      网友评论

          本文标题:C语言学习感悟(3)

          本文链接:https://www.haomeiwen.com/subject/aehmjftx.html