공부/C++

c++ 기본 문법

샤샤샤샤 2025. 11. 9. 13:54

기본 자료형

1) char : 문자 한글자를 담는 자료형. 기본 1바이트다.
2) short : 2바이트의 정수를 담을 수 있는 자료형. 2^16 만큼 표현 가능하다.
3) int : 4바이트의 정수를 담을 수 있는 자료형. 2^32 만큼 표현 가능하다.
4) long(long long int) : 8바이트를 담을수 있는 자료형. 2^64 까지 표현 가능하다. 본래 long long int 이니 long으로 줄여서 표현한다.
5) float: 4바이트. 소수를 담을수 있다. 소수점 7자리까지 정확하게 표현 가능하다.
6) double: 8바이트. 소수를 담을수 있다. 소수점 15~16 자리까지 정확하게 표현 가능하다.
7) bool : 1바이트. 0과 1만 표현 가능하며, 0은 false, 1은 true 를 의미한다.

 

전처리기 지시문
컴파일 전에 다른 파일을 포함시키기 위한 분법. 코드 상단에 #include <라이브러리 이름> 과 같이 사용한다. 컴파일 과정을 거치기 전, 컴파일러가 알아서 해당 파일을 불러와 컴파일 소스 상단에 해당 라이브러리의 소스를 붙여넣는다.

네임스페이스
쉽게 말하자면 함수, 변수, 열거체 등의 이름이 존재하는 모든 것에 대해, 꼬리표를 다는 것이라고 생각하면 편하다.
예를 들면 다음과 같다.
a라이브러리의 out() 함수와 b 라이브러리의 out() 함수의 이름이 같아서 서로 충돌하는 상황이 발생할 수도 있다. 이를 막기 위해 a의 out()을 호출한다, 와 같이 명확한 명시가 필요하다.
이것이 바로 namespace다. a::out()와 같이 호출하면 a의 out()함수를 호출한다.
그러나 이름이 충돌하지도 않는데, 매번 이렇게 적어주는건 불필요하게 코드만 길어지고 개발자의 수고만 늘게 된다. 이를 막기 위해 상단 전처리기 지시문 아래에 using namespace a; 와 같이 적어서 전역적으로 사용 가능하다.

main 함수
프로그램의 시작점. 기본적으로 c++ 코드는 main에서 실행된다. 따라서 프로젝트 1개는 1개의 main함수를 가질수 있다.

입출력
출력은 cout() 함수를 통해 가능하다. 이때 hello world 를 출력한다고 하면, cout("hello world") 가 아니다.
입출력 함수는 비트 연산자 << 와 >> 를 내부적으로 오버로딩하고 있기에, 이를 통해서 출력해야 한다.

#include <iostream>

int main()
{
    std::cout << "Hello World!";
}

이때 << 는 뒤의 문자(문자열)을 출력하라는 의미가 된다. 본래 <<는 비트 하나만큼 옆으로 움직이라는 의미나, 입출력 함수에서는 출력, 입력받으라는 의미가 된다.
따라서 입출력은 아래와 같이 해야한다.

#include <iostream>

int main()
{
    int x;
    std::cin >> x;
    std::cout << x;
}

char[] 와 같은 문자 배열을 출력할때, 빈 값을 만나야만 출력이 멈춘다. 따라서 char[] 형을 출력하고자 하면 배열의 마지막 요소에 빈 값을 의미하는  \0 을 명시적으로 넣어줘야 한다. 않그러면 \0을 만날때까지 계속 메모리를 읽는다.

'공부 > C++' 카테고리의 다른 글

c++ 함수  (0) 2025.11.10
c++ 포인터  (0) 2025.11.09