首页 文章

C指针 - Segment故障的解决方案是什么[关闭]

提问于
浏览
-5

为什么输出“分段故障(核心转储)

当我运行以下代码时,它表示段故障(核心转储)

#include <stdio.h>

void swap(int *, int *);

int main() {
    int x = 5, y = 10;
    swap(x, y);
    printf("%i\n %i\n", x, y);
}

void swap(int *a, int *b) {
    int s;
    s = *a;
    *a = *b;
    *b = s;
}

1 回答

  • 4

    问题在于 swap(x, y);

    您传递的是值而不是地址 . 你应该有编译器警告 .

    使用 swap(&x, &y);

相关问题