IT狗

不须要分外空间的互换函数的毛病

#include<stdio.h>void exchange(int &a, int &b){    a = a + b;    b = a - b;    a = a - b;}

这个互换函数有一个缺陷,假如两个参数是来自同一个地点的,那末这个地点贮存的值就会酿成零。比如说这个案例:

#include<stdio.h>void exchange(int &a, int &b){    a = a + b;    b = a - b;    a = a - b;}main(){    int a[] = {1};    exchange(a[0], a[0]);    printf("%d,%d",a[0]);}


这是这个案例的输入,可以发现本来是即是1的a[0]酿成了0。

此文由 IT狗 编辑,本网站所发布展示的作品/文章版权归原作者所有,任何商业用途均须联系作者!

相关推荐

评论 暂无评论