gpt4 book ai didi

c - 用指针交换变量

转载 作者:行者123 更新时间:2023-11-30 15:50:56 25 4
gpt4 key购买 nike

void swap (int *px, int *py) {
int temp;
temp = *px;
*px = *py;
*py = temp;
}

这将交换两个变量,这对我来说看起来不错。

现在如果我将其更改为

void swap (int *px, int *py) {
int *temp;
*temp = *px;
*px = *py;
*py = *temp;
}

注意 int *temp

尽管如此,这仍然有效,但是 temp 被取消引用而没有初始化。

这对什么值(value)不起作用?

就像如果我想创建一个名为 proc 的方法,我如何保证程序会崩溃?我想我应该在堆栈上留下一些东西。

int main () {
int a = 1, b = 2;
proc(/* Some args might go here */);
swap(&a, &b);
}

最佳答案

既然 int 是一个基本类型,为什么不只是......

void swap (int *px, int *py) {
国际温度;
温度=*px;
*px = *py;
*py = 温度;
}

关于c - 用指针交换变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15486369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com