1 #include <iostream>
2 using namespace std;
3 void add(int *a, int *b, int *c, int size); // add라는 이름을 가진 함수를 선언한다.
4
5 void main()
6 {
7 int a[] = { 10, 20, 30 }; // 배열 인자 선언
8 int b[] = { 40, 50, 60 }; // 배열 인자 선언
9 int c[3]; // 결과값 배열 선언
10 int size = sizeof(a) / sizeof(a[0]);
11
12 add(a, b, c, size);
13
14
15 for (int i = 0; i < size; i++)
16 cout << c[i] << "\t";
17 cout << "\n";
18 }
19
20 void add(int *a, int *b, int *c, int size) // 배열의 덧셈을 연산하는 함수 정의
21 {
22 for (int i = 0; i < size; i++)
23 {
24 c[i] = a[i] + b[i];
25 }
26 }
7 : a 배열 선언
a[0] |
a[1] |
a[2] |
10 |
20 |
|
8 : b 배열 선언
b[0] |
b[1] |
b[2] |
40 |
50 |
60 |
9 : c 배열 선언
c[0] |
c[1] |
c[2] |
|
|
|
10 : size 정수형 변수 선언을 하고 (a의 크기/a[0]의 크기)를 연산하여 대입. size에 대입되는 값은 3이 됨.
12 : add 함수 호출
a, b, c, size 인수 전달
a, b, c의 경우 a, b, c의 시작 주소가 전달됨.
size는 값이 전달됨.
20 : for문 실행. i는 0, 1, 2까지 실행됨.
c[0] = a[0] + b[0]
c[1] = a[1] + b[1]
c[2] = a[2] + b[2]
15 : for문 실행. i는 0, 1, 2까지 실행됨.
50 70 90이 출력됨.
C++ 하이킹 연습문제 7장 4번의 해답
C++ 클래스 관련 에러 발생 함수 수정하기 (0) | 2016.12.21 |
---|---|
C++ 별 출력 예제 (0) | 2016.12.14 |
C++ 두 2차원배열의 뺄셈을 수행하는 코드 (0) | 2016.12.14 |
C++ 두 정수와 연산자를 입력받아 계산하는 코드(계산기) (0) | 2016.12.14 |
C++ 팩토리얼(Factorial) 구하기 (0) | 2016.12.14 |