선생님, 코드 한번 봐주세요.
#include <iostream>
using namespace std;
void swap(int& a, int& b);
void swap(int* (&a), int* (&b));
int main()
{
int a, b;
int* pa = &a, * pb = &b;
cout << "정수를 입력해보자.";
cin >> a;
cin >> b;
cout << "정수 : " << a << " " << "정수 b : " << b << endl;
swap(a, b);
cout << "swap후의 값." << endl;
cout << "정수 a : " << a << " " << "정수 b : " << b << endl;
cout << "포인터 a : " << pa << " " << "포인터 b : " << pb << endl;
cout << endl;
swap(pa, pb);
cout << "swapp후의 값." << endl;
cout << "정수 a : " << a << " " << "정수 b : " << b << endl;
cout << "포인터 a : " << pa << " " << "포인터 b : " << pb << endl;
}
void swap(int& a, int& b) {
int temp = a;
a = b;
b = temp;
}
void swap(int* (&a), int* (&b)) {
int *temp = a;
a = b;
b = temp;
}
이렇게 작성했는데요, 1과 2를 출력하면
"2 1" 로밖에 출력이 안됩니다.
함수로 바뀐 값들은 출력이 안됨은 당연하고, 문자열도 전부 출력이 안됩니다.
왜이런거죵?? ㅠㅜ
답변 1
0
#include <iostream>
using namespace std;
void swap(int& a, int& b);
void swapp(int *a, int *b);
int main()
{
int a, b;
int* pa = &a, *pb = &b;
cout << "정수를 입력해보자.";
cin >> a;
cin >> b;
cout << "정수 : " << a << " " << "정수 b : " << b << endl;
swap(a, b);
cout << "swap후의 값." << endl;
cout << "정수 a : " << a << " " << "정수 b : " << b << endl;
cout << "포인터 a : " << pa << " " << "포인터 b : " << pb << endl;
cout << endl;
swapp(pa, pb);
cout << "swapp후의 값." << endl;
cout << "정수 a : " << a << " " << "정수 b : " << b << endl;
cout << "포인터 a : " << pa << " " << "포인터 b : " << pb << endl;
}
void swap(int& a, int& b) {
int temp = a;
a = b;
b = temp;
}
void swapp(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
float 출력관련 질문
0
269
1
마지막 2차원 배열포인터 예제 직접 만드신건가요?
1
556
0
2차원 배열 관련 질문입니다.
0
385
0
scanf 문의
0
414
1
visual studio 2019버전 max함수 헤더파일없이
0
616
1
결과값 다른것에 대해 질문해도될까요.
0
312
0
#define 형식지정도 컴퓨터가 알아서 하나요?
1
634
1
이렇게 하면 이상한 결과가 나옵니다
0
395
1
double
0
240
1
2차원 배열 포인터 연습 해보는 중에
0
291
0
ex1.cpp 파일을 찾을 수 없다고 합니다.
1
267
1
포인터 선언
0
217
0
strcpy를 strcpy_s로 바꿔야 할 것 같습니다.
1
419
1
bool r.....
0
192
0
정수와 실수를 모두 사용할수 있는 변수가 있나요?
0
309
0
마지막 문제 질문입니다.
0
250
0
1번 문제 관련 질의
0
325
1
double 변수 출력 시의 오류에 관하여
0
301
0
scanf unsafe에러가 나네요.
7
294
1
call-by-reference에 대해서 질문있습니다
2
249
0
소스코드
0
364
0
정적 변수의int Color::counter부분에 대해
0
217
0
"" 와 '' 의 차이
0
200
0
클래스 관련해서 질문있습니다!
0
252
1





