如何设置int等于int指针?

问题描述

嘿,我有这段代码可以转置数组,并且在将临时值int设置为int指针时遇到一些问题。

void transpose(array_t a) {

    printf("how about here\n");
    long i;
    long k;
    int *i1 = &a[i][0];
    int *j1 = &a[0][k];
    int t1 = 0;
    int t2 = 0;
    printf("This number is %d\n",*i1);
    printf("This letter j is %d\n",*j1);
    for (i = 0; i < N; ++i) {
            for (k = 0; k < i; ++k) {
            t1 = *i1;
            t2 = *j1;
            printf("What is t1 %d\n",t1);
            i1 = t2;
            j1 = t1;
            i1 += 8;
            j1 += 32;
            }
    }

}

每当我尝试进入循环时,都会遇到段错误,当我将其更改为t1 =&i1时,我只会获取内存地址,并且不知道如何获取实际的int值。在循环的最后,我想到了将l1和j1移到数组的下一部分的想法。 任何帮助将不胜感激,谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)