无法将int转换为int *

时间:2010-09-06 19:29:37

标签: c++ c

#include "stdio.h"
#include "conio.h"

void swap(int *x,int *y);

void main()
{
int a=10,b=20;
swap(a,b);
printf("value of a=%d and b=%d");
getch();
}

void swap(int *x,int *y)

{
  if(x!=y)
     {
      *x ^= *y;
         *y ^= *x;
         *x ^= *y;

     }
}

//我得到..无法将int转换为int * ...

任何人都可以告诉我为什么这样。以及如何解决它 问候。

希望得到快速和积极的回应。

1 个答案:

答案 0 :(得分:21)

您对swap()的来电应包括&符号:

swap(&a,&b);

swap期待指向int,因此您需要在传递ab时提取地址。