标题:考研复试ing...求大家帮助
取消只看楼主
大爱CATs
Rank: 4
来 自:重庆
等 级:业余侠客
威 望:3
帖 子:108
专家分:250
注 册:2015-1-13
结帖率:85.71%
已结贴  问题点数:20 回复次数:3 
考研复试ing...求大家帮助
#include "stdio.h"
int main()
{
    int i=0,num=0;
    int a[]={2,4,6,8};
    int *p=a;
    //num=(*p)++;
    a[i] = (*p)++;
    //printf("%d",num);
    printf("%d %d",a[i],i);
    return 0;
}

我用int num变量输出正确,我想得通
为什么这里面用数组输出是3???

我想了很久了 不思其解  希望大家帮帮我
搜索更多相关主题的帖子: ing int num printf 输出 
2018-03-04 20:31
大爱CATs
Rank: 4
来 自:重庆
等 级:业余侠客
威 望:3
帖 子:108
专家分:250
注 册:2015-1-13
得分:0 
在线等大家了 想不懂很难受
num输出为2
a[i]输出为3 此时i也是等于0的

弹指一挥间
2018-03-04 20:33
大爱CATs
Rank: 4
来 自:重庆
等 级:业余侠客
威 望:3
帖 子:108
专家分:250
注 册:2015-1-13
得分:0 

弹指一挥间
2018-03-04 20:34
大爱CATs
Rank: 4
来 自:重庆
等 级:业余侠客
威 望:3
帖 子:108
专家分:250
注 册:2015-1-13
得分:0 
以下是引用renkejun1942在2018-3-4 21:12:10的发言:

int *p = a;//p指向数组的首元素。
a = (*p)++;//a[0] = a[0]++;

我懂了 谢谢你

弹指一挥间
2018-03-04 21:18



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




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

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