int main()
{
int x = 2; // x is a variable, 2 is a literal.
cout << "Hello, world" << endl;
return 0;
}
c++을 배우면 가장 기본적인 코드입니다. int x = 2 는 x라는 variable 즉 메모리를 가지는 것이며 그 메모리에 2라는 값을 넣어주는 것입니다.
단항연산자
x, -x 같은 연산자입니다.
이항연산자
1 + 2 , 3 + 4 같은 것입니다.
삼항연산자
int y = (x > 0) ? 1 : 2 ; // x가 0보다 크면 ? 다음에서 왼쪽에 있는 것을 실행시킵니다. 거짓이면 오른쪽 것을 실행시킵니다. 참이면 1 거짓이면 2가 나오는 것입니다.
챗 GPT 설명
condition ? expression1 : expression2
여기서 condition은 참 혹은 거짓을 판단할 수 있는 조건식입니다.
만약 condition이 참이라면, expression1이 실행되고, 거짓이라면 expression2가 실행됩니다.
따라서 int y = (x > 0) ? 1 : 2; 코드는 다음과 같은 의미를 갖습니다.
x가 0보다 큰 경우, y에 1을 할당합니다.그렇지 않은 경우(즉, x가 0 이하인 경우), y에 2를 할당합니다.
즉, x의 값에 따라 y의 값이 결정됩니다. 만약 x가 0보다 크면 y에는 1이 할당되고, x가 0 이하이면 y에는 2가 할당됩니다.
기본적인 서식 맞추기
int main()
{
int my_v = 1;
int x = 4;
int num_apples = 123;
//this is important
int x = 1 + 2;
//this is important too
int y = 3 + 4;
return 0;
}
Tab키를 사용해서 각 연사자의 = 줄 맞추기
선언과 정의의 분리
#include <iostream>
using namespace std;
int add(int a, int b)
{
return a + b;
}
int multiply(int a, int b)
{
return a * b;
}
int subtract(int a, int b)
{
return a - b;
}
int main()
{
cout << add(1, 2) << endl;
return 0;
}
이렇게 함수를 여러개 할 경우 main이 맨 뒤에 있고 보기가 어려워집니다. 그래서 코드를 줄여야 할 필요가 있습니다. 이럴 때 해야 할 일이 함수를 뒤에 적는 방식입니다.
int subtract(int a, int b) 이것은 함수의 기본적인 정보를 나타내주는 prototype입니다. 이 prototype만 앞에 있으면 (forward declaration) 전방 선언을 해준다면 가능합니다.
그리고 함수의 정의는 뒤에 놔두면 정상적으로 함수가 실행이 됩니다.
#include <iostream>
using namespace std;
int add(int a, int b);
int multiply(int a, int b);
int subtract(int a, int b);
int main()
{
cout << add(1, 2) << endl;
return 0;
}
int add(int a, int b)
{
return a + b;
}
int multiply(int a, int b)
{
return a * b;
}
int subtract(int a, int b)
{
return a - b;
}
이런식으로 세 개의 함수의 prototype을 위에 올려주고 main 함수를 적어준다면 오류가 나지 않고 온전하게 실행할 수 있습니다.
'IT 프로그래밍 > C++' 카테고리의 다른 글
[따배시 2.3~5] C++ 고정 너비 정수, Void, 부동소수점 수 (0) | 2024.03.06 |
---|---|
[따배시 1.12~14] 헤더가드, 네임스페이스, 전처리기 (0) | 2024.03.05 |
[따배시 1.6~7] 키워드와 식별자 이름짓기, 지역범위 (0) | 2024.03.05 |
[따배시] 1.5 함수와의 첫 만남 (0) | 2024.03.05 |
[따배시 1.4] 입출력 스트림과의 첫 만남 cin, cout (0) | 2024.03.04 |