标题:c语言指针问题,大神帮帮忙
取消只看楼主
bccnba
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-8-5
结帖率:25%
已结贴  问题点数:20 回复次数:3 
c语言指针问题,大神帮帮忙
将数组a中n个整数按相反顺序存放,我写的代码如下:
#include<stdio.h>
int main(void)
{
    int inv(int *x, int n);
    int i;
    int a[10] = { 3, 7, 9, 11, 0, 6, 7, 5, 4, 2 };
    printf("The original array:\n");
    for (i = 0; i < 10; i++)
        printf("%d ", a[i]);
    printf("\n");

    inv(a, 10);
    printf("The array has been inverted;\n");
    for (i = 0; i < 10; i++)
        printf("%d ", a[i]);
    printf("\n");
}
int inv(int *x, int n)
{
    int temp,*i=*x , *j=*(x+n-1) , *m=*(x+(n-1)/2;
    for (; i <= m; i++, j--)
    {
        temp = *i;

        *i = *j;
        *j = temp;
        }
}
而正确代码是把inv函数的第一行改为int temp,*i,*j,*m;i=x;j=x+n-1;m=x+(n-1)/2;        
我写的那块指针为什么是错误的,请帮忙解释一下,谢谢
搜索更多相关主题的帖子: original include c语言 
2015-08-05 12:54
bccnba
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-8-5
得分:0 
回复 2楼 rjsp
那个字符删与不删表示的意义有什么不同吗
2015-08-05 13:09
bccnba
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-8-5
得分:0 
回复 6楼 开拓者163
Thank you
2015-08-05 22:19
bccnba
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-8-5
得分:0 
回复 5楼 calix
那*i=*j是?
2015-08-05 22:22



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




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

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