error: expected ';', ',' or')'before'&'token 해결 방법

Devcpp 검증 함수 "인용 전달"에서 오류 알림이 발생했습니다. [error] expected';','or ')' before '&' token
소스 코드는 다음과 같습니다.
#include 

int exchg(int &x,int &y){
	
	int tmp=x;
	x=y;
	y=tmp;
	printf("x=%d,y=%d",x,y);
	return 0;
}

void main(){
	int a=6,b=4;
	  printf("a=%d,b=%d",a,b);
	exchg(a,b);
	  printf("a=%d,b=%d",a,b);
	} 

왜 컴파일할 때'error:expected',','or')'before'&'token'이라는 잘못된 힌트는 많은 학우들이 이 점에서 이해할 수 없다. 분명히 문법적으로 틀린 것이 없는데, 왜?
사실 이것이 바로 C언어의 지식점입니다.
C 언어에서는 인용이 존재하지 않습니다. 즉, C 언어에서 & 는 인용이 아니라 주소 문자를 나타냅니다.그래서 컴파일러의 오류 알림은 & 여기서 이렇게 사용할 수 없음을 나타냅니다. 이 문제를 어떻게 해결합니까?
1. 일반적인 해결 방법: 인용을 바늘로 대체하고 주 함수에서 주소를 전송한다.
2. 코드 확장자를 저장합니다.cpp 파일
왜?
우리는 c가 인용 전달을 모른다고 생각할 수 있지만, c++는 인용 전달을 지원합니다!

좋은 웹페이지 즐겨찾기