Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 无法将int转换为int*_C++_C - Fatal编程技术网

C++ 无法将int转换为int*

C++ 无法将int转换为int*,c++,c,C++,C,//我要。。无法将int转换为int* 有人能告诉我为什么吗。如何解决呢 问候 希望得到快速而积极的响应。您对swap()的呼叫应包括以下符号: #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)

//我要。。无法将int转换为int*

有人能告诉我为什么吗。如何解决呢 问候

希望得到快速而积极的响应。

您对
swap()
的呼叫应包括以下符号:

#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;

     }
}

swap
需要指向
int
的指针,所以在传入
a
b
时需要取它们的地址。

是的,正是我要说的,所以+1或等效的
无效交换(int*x,int*y)
应该是
无效交换(int&x,int&y)
(当然还有修改过的主体)@doc:这对C来说不是真的,它也是一个标签(只是为了完整和迂腐),我认为整个delimma的正确解决方案是让人们真正决定他们使用的语言。与流行的信念相反,C代码与C++代码不一样。它应该是
printf(“a=%d和b=%d的值”,a,b)。除了您手头的问题之外,还有一些备注:conio不是标准头,stdio不应该通过双引号包含,void main也不在标准中。虽然它可以在您给定的工具链中工作,但编写可移植且符合标准的代码可能是一个好主意。您的目标是哪种语言?不要只是在上面加上语言标签。而且,听起来你需要学习基础知识。与这个问题无关,除非你完全清楚swap算法的作用和原因,否则你不应该使用它。你应该好好读一读:15.6k的分数和这么简单的错误?
swap(&a,&b);