반응형
#include <iostream>

우리가 c++을 시작할 때 맨 위에 볼 수 있는 것이다.

이것은 무엇을 의미할까?

 

1. #include 의미

우선 전처리기(preprocessor)을 살펴봐야 한다. 이름에서 보듯 미리 전에 처리하는 것을 의미한다.

컴파일을 하기 전에 소스 파일에 대해 미리 어떤 처리를 수행하는 프로그램이다.

c++에서 #include가 전처리 지시자인 것이다.

 

=> #include로써 전처리를 지시한다.

 

 

2. <iostream> 의미

i는 입력(input), o는 출력(output)을 의미한다.

즉 프로그램과 바깥 세상이 정보를 주고 받을 수 있도록 하는 파일이다.

따라서 #include <iostream>의 뜻은 iostream 파일의 내용을 프로그램과 함께 컴파일러로 보낸다는 것이다.

 

=> iostream으로 입출력이 가능하다.

 

 

 

결과적으로 #include <iostream> 행이 iostream 파일의 내용으로 대체된다.

사용자가 작성한 소스 파일은 변경되지 않은 채 iostream과 결합하여 컴파일 다음 단계로 넘어간다.

(우리가 사용하는 cin, cout을 사용하려면 iostream 파일을 포함시켜야 한다.)

반응형

'C++' 카테고리의 다른 글

C++ / 6. struct 구조체  (0) 2024.01.02
C++ / 5. string 클래스  (0) 2023.12.18
C++ / 4. array 배열  (0) 2023.12.15
C++ / 3. const  (0) 2023.12.14
C++ / 1. main() (메인 함수) 의미  (0) 2023.12.14
반응형

처음 c++를 실행하면 볼 수 있는 구조가 있다.

int main()
{
	return 0;   
}

 

 

1. main() 함수의 존재 이유

왜 존재해야 하는 것일까?

 

우리가 코드를 작성하면 OS(운영체제)에게 실행 파일을 실행시켜 달라고 요청하는 방식으로 작동한다.

이때 함수 단위로 요청을 하게 되는데 OS가 처음으로 main을 찾아서 실행시킨다.

즉 main이 없으면 실행을 시키지 않게 된다.

따라서 main이 존재해야 실행 파일이 작동할 수 있게 되는 것이다.

=> 모든 C++ 프로그램은 main() 함수로부터 실행을 개시한다.

 

 

또 여기서 한 가지 의문이 들 수 있다.

그럼 return 0;이 의미하는 것은 무엇일까? 0을 반환하지 않는데 무슨 이유가 있는 것일까?

2. main() 함수에서 return 0; 의미

함수에서는 0을 반환함으로써 정상적인 작동을 했다는 뜻을 내포한다.

즉 0을 반환하면 정상적인 종료를 의미하는 것이다.

=> 정수 0을 반환하는 의미가 아닌 정상적인 작동과 종료를 의미하는 것이다.

 

 

반응형

'C++' 카테고리의 다른 글

C++ / 6. struct 구조체  (0) 2024.01.02
C++ / 5. string 클래스  (0) 2023.12.18
C++ / 4. array 배열  (0) 2023.12.15
C++ / 3. const  (0) 2023.12.14
C++ / 2. #include 와 iostream 파일  (0) 2023.12.14
반응형

정수형 데이터 타입을 살펴보자면 아래 범위를 포함할 수 있다.

 

int 자료형을 살펴보면 Range가 -2,147,483,648 ~ 2,147,483,647 임을 알 수 있다.

이는 int 형이 표현할 수 있는 size가 4byte = 32bit 로

2^32(2의 32 제곱) = 4,294,967,296 가지 이진수 표현식을 만들 수 있다.

즉 음수, 0, 양수를 포함하므로 위 범위가 표현될 수 있는 것이다.

 

이렇게 이진수 계산법을 적용하면 각 type 별 size를 알아볼 수 있다.

 

 

위 자료는 마이크로소프트 C# 문서에서 확인할 수 있다.

+ 다른 데이터 타입 별 범위도 나와있으니 참고하면 된다.

https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types

반응형

+ Recent posts