본문 바로가기

C++

(40)
C++ Reference Reference(참조자)란 내가 가지고 있는 변수를 대신할 또다른 변수이다. 별칭,별명같은 느낌 참조자의 선언은 변수명&을 이용해서 선언하게된다. 참조자는 자신이 가리키고 있는 대상의 값을 저장한다. int main() { int b = 20; int& num = b; } 이런식으로 작성하며 num은 b의 주소를 가지고있다. 이때 num = 30; 을 하게되면 b의 값은 30이 될것이다. Reference를 사용할때 주의사항 1. 선언과 동시에 초기화를 해주어야한다. 2. 참조형의 변수는 절대 NULL이 될 수 없다. 3. 가지고 있지 않은 메모리 장소를 가리킬 수 없다. 4. 선언이후 다른 것을 참조할수없다. int main() { int a = 10; int b = 20; int& num = a; ..
C++ 연산자 연산자란 어떤한 값을 반환하는 것 연산자의 종류 산술 연산자, 대입 연산자 ,sizeof연산자, 논리 연산자, 비트단위 연산자 단항 연산자, 이항 연산자, 삼항 연산자 산술 연산자 (이항 연산자) +, -, *, /, %(더하기, 빼기, 곱하기, 나누기, 나머지) 대입 연산자 = 주의사항 대입 연산자 기준 양 향은 같은 타입의 자료형 이여야 대입 연산자를 사용할수있다. int a = 3.14 하면 정수형에 실수형을 넣어 문제가 발생한다. 물론 컴파일에 문제가되지는않지만 0.14라는값이 날라가버린다. sizeof연산자 자료형이나 변수가 할당된 공간의 크기를 알아보기 위해 사용 int a; sizeof(a); 하게되면 int는 4byte이기때문에 4가 반환된다. 만약 double이라면 8byte가 반환될것이..
C++ 진수 진수란 숫자를 표현하는방법 10진수 0~9까지 사용 우리가 보통사용하는 숫자개념 2진수 0과1 두가지만 사용하는 표시방법 기계어가 2진수로 되어있다. 8진수 0~7까지 사용 8진수의 경우에는 그냥 7이라고 쓰지않고 07이라고 표시하여 8진수라고 명시해준다. 각 자리당 000~111까지 표시할수있다. 16진수 0~15까지 사용 16진수의 경우에는 앞에 0x라고 표시하여 16진수라고 명시해준다. 10이상부터는 알파벳을사용한다 (11 -> B / 13 -> C) 각 자리당 0000~1111까지 표시할수있다. 진수의 변환 10진수 를 2진수로 변환 10진수를 2로 나누고 나머지값의역순으로읽으면된다. 8을 2진수로바꾸면 8 % 2 = 0 4 % 2 = 0 2 % 2 = 0 1 역순으로 읽어 1000이 8을2진수로..
C++ 부호비트 우리가 컴퓨터 숫자를 쓸때 앞에 쓰는 부호 +,-는 0과1로 되어있다. -1은 2진수로 표시하면 1001이된다. 그리고 1은 0001이다. -1과 1을 더하면 0이되어야하지만 1001 + 0001은 1010이라는 값이 나와 이상한 값이 나오게된다. 이때 사용하는게 2의보수와1의보수이다. 1의 보수란 비트 반전 0은 1로, 1은 0으로 변환 하는것이다. 0001의 1의보수는 1110 1001의 1의보스는 0110이다. 1의보수한 값인 1110과 0110을 더하면 0000이라는 우리가 원한 값을 얻을수있다. 하지만 1의 보수만을 사용하면 비트 반전을 너무 많이 해야한다는 단점이 존재한다. 그래서 등장한게 2의보수이다. 2의부수란 1의 보수 취한 값에 +1한것이 2의보수다 1001의 1의보수인 0110 000..
C++ 문자 char에는 'A'라는 문자가 들어가지만 char의 저장된 A는 정수값으로 저장된다. 그래서 char에 65란 값을 넣으면 A란 값이 출력되는데 그 이유는 65란 값이 아스키코드로 A라는 값이기 때문이다. 아래 예제는 아스키 코드를 이용해서 HELLOWORDL라는 문자를 표시한 예제이다. void main() { char text = 72; char text1 = 69; char text2 = 76; char text3 = 76; char text4 = 79; char text5 = 87; char text6 = 79; char text7 = 82; char text8 = 76; char text9 = 68; cout
C++ 변수와 자료형 변수란 메모리를 할당한 공간에 이름을 부여하는것 -> 할당한 메모리를 의미한다. 변수선언방법 변수를 선언하기위해서는 자료형 과 변수명이 필요하다. 변수명 자료형 바이트 int 정수형 4 bool 참,거짓 1 double 실수형 8 float 실수형 4 char 단일문자 1 자주 사용하는 변수들을 저정도있다. 더 많은 변수들이 존재하지만 여기서는 저것들만 보여주겠다. 사용방법 void main() { int playerHP = 100; bool check = true; float bossHP = 99.99; double monsterHP = 99.99; char name = 'a'; string names = "aaa"; } 만약 변수를 선언하고 초기화를 하지않은경우에는 쓰래기값이라는 이상한 값이 들어간다..
C++ 콘솔에 문자열 출력하기 C++에 문자열을 출력하는 함수는 여러가지가있다. 보통 사용하는 문자열 출력함수는 printf와cout이있으나 이번 예제에서는 cout으로 문자열을출력하겠다. #include using namespace std; void main() { cout 링커 -> 실행 파일 생성 1. 코드작성 : 사용자가 프로그래밍 문법에 맞게 코드를 작성하는 단계. 2. 전처리기 : #이 작성된 코드 라인을 번역하기 이전에 수행하는 단계 # : 전처리 지시자 3. 컴파일 : 고수준 언어를 저수준 언어로 번역하는 단계. 4. 어셈블러 : 저수준 언어를 기계어로 번역하는 단계 (어셈블러 단계를 거치면 .obj 파일이 생성된다.) 5. 링커 : .obj 파일과 .lib파일을 하나로 묶는 작업을 수행하는 단계. (하나로 묶으면 실행..
C++ 이란? C++은 객체지향 프로그램이다. 객체지향 이란 객체, 주체, 주어에 중점을둔 프로그래밍 객체가 수행하는 기능과 각 객체 간의 상호자굥이 중요하지, 객체 내부의 기능들이 무엇으로 이루어졌으며 어떤 순서로 이루어지는지는 중요하지 않다. 프로그램을 유연하고 변경 용이하게 설계할 수 있기 때문에 대규모 프로젝트에서 이점을 보인다.