그날의 코딩

220304

슬뷔 2022. 3. 6. 21:52

 어소트락 게임 아카데미에서 첫 코딩 수업을 들었다.

 

현재 나의 전공 : 환경공학과(열분해)

 

비전공인 내가 클라이언트 개발자가 되기 위해 이 블로그에 기록을 남기고자 한다.

앞으로 약 2년간 화이팅! 

 

 


 

visual studio 19 버전을 준비한다. 

=> 비주얼 스튜디오 버전마다 지원되는 C++ 버전이 다르다고 한다! 

신규개발부서가 아닌 경우 이전 버전을 이용하기 때문에, 이전 버전을 먼저 익히고 새로운 버전을 익혀야한다. 이전 버전에만 지원하는 코드?도 있기 때문에!


        솔루션 1개에 여러 개의 project 생성이 가능하다. (~~.cpp, ~~.h 생성 가능)

 

        #include -> compile을 하기 전에 원하는 헤더파일을 여기에 포함시켜서 해당 헤더 파일에서 제공하는 기능을 할 수 있게 해주는 기능

# <- 앞에 #이 있으면, 전처리기가 된다. (compile 하기 전에 작업이 됨)

 

#include <iostream> 

C++의 표준 입력 및 출력기능을 제공해주는 헤더파일.

 

C++에서 제공되는 대부분의 기능들은 std라는 namespace로 감싸져 있다. 

C++은 car, Car을 서로 다르게 인식한다. -> 이름이 중복되면 허용되지 않는다.

이름 중복 방지를 위해 namespace로 기능들을 감싸주었다.

이 경우 std namespace를 통해서 안의 기능에 접근

C++에서 콘솔창에 출력하기 위해서 제공되는 기능으로 cout이 있다.

cout은 std namespace안에 포함되어 있기 때문에 ::(범위 지정 연산자)를 통해서 접근한다.

 

std::cout <= std 안에 있는 cout 이라는 의미로 사용.

만약 여기서 cout이라는 이름으로 다른걸 만들었다면, std::cout, cout은 서로 다르다.

 

std::cout << "원하는 텍스트를 입력하여 출력이 가능합니다.";

 

코드는 위에서 아래, 오른쪽에서 왼쪽으로 동작한다.

            \n : 한 줄 개행, Enter키를 친 효과를 준다.

\t : tab 키입력과 같은 효과를 준다.

 

std::cout << std::endl; // endl은 \n과 같이 한 줄 개행을 시켜준다.

 

프로그램이 동작될 때 필요한 데이터들은 메모리에 저장된다.

 

    메모리: 주기억장치 => 휘발성, 프로그램 종료시 저장하고 있던 데이터 삭제.

하드디스크 or SSD: 보조기억장치 => 비휘발성, 반영구적으로 저장이 가능


 

용량의 최소 단위 'bit'

1byte=8bit -> 2^8개 값을 표현할 수 있다.

1kbyte=1024byte

1mbyte=1024kbyte

:

 

1bit는 0 또는 1 둘 중 하나의 값만 저장 가능하다.

C++에서 데이터 저장 수단으로 변수가 지원된다.

 

유형 메모리 크기 표현 종류 값의 표현범위
bool 1byte 참(1) / 거짓(0) false / true
char 1byte 문자 -128 ~ 127
short 2byte 정수  
int 4byte 정수  
__in64 8byte 정수  
float 4byte 부동 소수점  
double 8byte 부동 소수점

bool 변수에서 참/거짓은 0이면 거짓이고, 0을 제외한 모든 수는 참으로 표현 된다.

char 변수에서 문자를 저장할 때는 숫자로 저장하고, 출력을 할 때는 아스키 코드를 참조하여 값에 해당되는 문자가 출력이 된다.

실수 뒤에 f를 붙여주면 float타입의 실수가 되고, 안 붙이면 double타입의 실수가 된다.

 

 

값의 표현 범위는 F12 키를 이용하여 확인 가능 

 


player HP 라는 개인변수를 만들면,

int Player HP;

Player HP=100;

 

= 는 대입 연산자로 오른쪽의 값을 왼쪽의 변수에 넣어준다.

 

'그날의 코딩' 카테고리의 다른 글

220315_class  (0) 2022.03.15
220314_class  (0) 2022.03.15
220308_class  (0) 2022.03.08
220307_class  (0) 2022.03.07
220304_code_review  (0) 2022.03.06