예제
#include <iostream>
#include <cstdio>
using namespace std;
int addTwoNumbers(int num_a, int num_b)
{
int sum = num_a + num_b;
return sum;
}
int main(void)
{
cout << addTwoNumbers(1,2) << endl;
cout << addTwoNumbers(3,4) << endl;
cout << addTwoNumbers(8,13) << endl;
return 0;
}
using namespace std를 통해 네임스페이스를 나용함으로써 std::를 붙이지 않고도 표준 라이브러리 요소를 사용할 수 있게 했습니다.
그 다음 예제에서 함수를 만들었는데 addTwoNumbers라는 함수 이름을 설정해줬으며 그 다음 (int num_a, int num_b)를 통해 두 개의 정수를 입력받아서 그 합을 반환하도록 정의를 해주었습니다.
함수의 반환형은 int이며 return sum을 통해 sum을 반환하도록 해주었습니다.
이후 int main에서 출력하려는 값에 addTwoNumbers를 넣어주었습니다.
return0 의 뜻은 일반적으로 프로그램이 성공적으로 종료되었음을 나타냅니다.
함수를 쓰는 이유는 편하기 위해서입니다. 이름바꾸기를 통해 전부를 바꿀 수 있는 것처럼 일일히 수정할 필요가 없기 때문입니다.
용어 설명
int multiplyTwoNumbers(int num_a, int num_b) : 여기서 num_a, num_b는 매개변수라고 합니다.
그리고 cout << multiplyTwoNumbers(1,2) << endl; 여기서 1, 2는 argument라고 합니다.
void printHelloWorld()
{
cout << "Hello world " << endl;
return;
}
int main()
{
printHelloWorld();
return 0;
}
여기서 void를 사용하는 이유는 해당 함수의 경우 반환값이 없기 때문입니다. void는 빈이라는 뜻으로 빈 값 즉 반환하는 것이 없을 때 사용이 됩니다. 저 함수를 사용한다고 해서 저기에서 반환되는 값이 없기 때문입니다.
반면 main 함수는 printHelloWorld에서 문자열을 반환받기 때문에 int를 사용합니다.
main() 함수가 int를 반환하는 이유는 프로그램의 성공 또는 실패 여부를 나타내기 위함입니다. 반환값을 사용하여 운영 체제나 다른 프로그램이 프로그램의 실행 결과를 판단하고 이에 따른 조치를 취할 수 있습니다. 여기서 주로 사용되는 관례는 0이 성공이고, 그 외의 값은 실패를 나타냅니다.
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int num;
cout << "Enter an integer :";
cin >> num;
cout << "You entered: " << num << endl;
return 0;
}
위는 간단한 예시를 사용한 것입니다.
먼저 using namespace std;를 통해 std를 계속 붙여주지 않아도 자동으로 std가 되도록 namespace를 지정해주었습니다.
그 다음 main 함수에서는 값을 출력해야 하기 때문에 int로 받아주었으며 int num을 정의해준 후에 cout를 통해 사용자에게 보여줄 문구를 적어주었습니다. 그 다음 cin을 통해 사용자한테 입력 받은 숫자를 num이라는 변수에 저장해주었으며 다시 cout를 통해 문구 후 num을 출력 그 다음 endl을 통해 줄바꿈 후 마무리되었습니다.
여기서 return 0 은 성공하였을 경우 0을 출력해 함수를 종료하는 것입니다.
'IT 프로그래밍 > C++' 카테고리의 다른 글
[따배시 2.3~5] C++ 고정 너비 정수, Void, 부동소수점 수 (0) | 2024.03.06 |
---|---|
[따배시 1.12~14] 헤더가드, 네임스페이스, 전처리기 (0) | 2024.03.05 |
[따배시 1.8~2.0] 연산자와의 첫 만남, 기본적인 서식 맞추기, 정의 (0) | 2024.03.05 |
[따배시 1.6~7] 키워드와 식별자 이름짓기, 지역범위 (0) | 2024.03.05 |
[따배시 1.4] 입출력 스트림과의 첫 만남 cin, cout (0) | 2024.03.04 |