IT 프로그래밍/C++

[따배시 1.8~2.0] 연산자와의 첫 만남, 기본적인 서식 맞추기, 정의

기술1 2024. 3. 5. 14:37
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 함수를 적어준다면 오류가 나지 않고 온전하게 실행할 수 있습니다.