목록전체 글 (103)
배움 저장소

7.1 매개변수와 실인자의 구분(Parameter and Argument) 7.2 값에 의한 전달 Passing Arguments by value(Call by value) Call by value는 값을 복사하여 전달한다. - 아래 예제에서, main의 지역변수인 Argument 값이 복사되어 function에게 전달된다. function이 호출되면 함수의 Parameter에 복사된 값이 할당되어 초기화된다. int function(int Parameter) { return Parameter + 5; } int main() { int Argument = 1; function(Argument); } 7.3 참조에 의한 인수 전달 Passing Arguments by Reference(Call by Ref..
6.1 배열 기초 [1 of 2] array 배열 이름 뒤에 붙는 [ ]는 deferencing이다. 배열의 자료형 크기 * 해당 index 자리에 있는 값을 읽는다 c++11은 배열의 uniform initialization을 지원한다. int arr[]{ 1, 2, 3, 4, 5 }; 배열의 Index에 Enum 열거형을 사용할 수 있다 - 열거형의 마지막 변수를 COUNT로 쓰면 편리하다. enum StudentName { JACK, ALI, VIOLET, NUM_STUDENT, }; int main() { // c++ 11 allow array's uniform initialization int arr[NUM_STUDENT]{ 0, 1, 2 }; arr[JACK]; arr[ALI]; arr[VIO..
5.1 제어 흐름 개요 (Control Flow) - 프로그래밍은 CPU에게 특정 명령을 실행시킴을 말한다. - 이때 코드의 묶음을 다양한 흐름으로 실행할 수 있다. 이를 Control Flow라 하고 5가지 종류가 있다. 종류 Keyword Halt(중단) Jump(점프) goto, break, continue Conditional Branches(조건 분기) if, switch Loops(반복) while, do while, for Exceptions(예외 처리) try, catch, throw exit( ) vs return - 라이브러리에서 exit(int) 함수를 사용하여 프로그램을 긴급하게 종료시킬 수 있다. 이때 Parameter를 운영체제에게 전달하며 디버깅 용도로 사용된다. - retur..
4.1 지역 변수, 범위, 지속기간 범위(영역) Scope : 변수를 사용할 수 있는 범위 지속기간 Duration : 메모리를 할당받고 반환하기 전까지의 기간 Compound Statement(복합문) - { } 내부에 있는 코드의 모음이다. 컴파일러는 { } 내부에 있는 코드를 하나의 statement로 취급한다. 외부에서 사용된 변수명을 Compund Statement 내에 다시 정의할 수 있다 - 객체지향 프로그램에서 변수명을 object와 함께 사용하기 때문에 같은 변수명을 여러번 활용할 수 있다. - namespace를 활용해도 된다. int main() { int x = 1; cout
3.1 연산자 우선순위와 결합 법칙 연산자 Associativity(우선순위) - 연산자 우선순위는 다음을 참고하자 https://en.cppreference.com/w/cpp/language/operator_precedence C++ Operator Precedence - cppreference.com The following table lists the precedence and associativity of C++ operators. Operators are listed top to bottom, in descending precedence. ↑ The operand of sizeof can't be a C-style type cast: the expression sizeof (int) * p is..

2.1 기본 자료형 소개(Fundamental Data Types) Fundamental types - 자료형마다 저장공간이 정해져있다. 큰 저장공간을 사용하는데 이를 활용하지 않으면 낭비이다. - 자료형은 필요에 맞게 사용함이 좋다. character 문자 -이모티콘 같이 다양한 문자를 사용함에 따라 저장공간이 많은 char 자료형이 필요했다. 2byte, 4byte char 자료형이 있음을 확인할 수 있다. -wchar_t는 windows 개발에 여럿 쓰인다. Linux- window간 호환성 문제가 생길 수 있어 잘 사용하지 않는 추세이다. Integer 정수 - signed 보다 unsigned 연산이 빠를 때가 있다. 간단한 연산을 수없이 반복할 때 unsigned을 사용하면 유리하다. - It..

1.1 프로그램의 구조 프로그램이 실행되는 원리 (1) 사용자가 운영체제에게 프로그램 사용을 요청한다. 운영체제는 CPU(연산)와 RAM(저장) 자원을 할당하여 프로그램 데이터를 가져와 실행시킨다. (2) OS는 프로그램 시작 시 main( ) 함수를 찾아 실행한다. Statement와 Expression - statement(명령문) : semicolon( ; )이 들어간 문장으로 컴퓨터가 명령을 수행하는 단위이다. - expression(표현식): 값을 계산하기위해 +,- 와 같이 연산자와 숫자로 구성된 기호들로 결과 값이 존재한다. 저장공간 할당받기 - 아래 코드를 통해 int 자료형의 저장공간을 할당받았다. int x; 1.2 주석 comments 1.3 변수와의 첫 만남 Object(객체) : ..

0.0 - 배우다가 해보고싶거나 구현하고 싶은 코드가 있다면 바로 해보자 0.1 프로그래밍 언어란 기계어(Machine Language) - 0000 0000 0000 0001 = 1 어셈블리(Assembly Language) - CPU가 일할 수 있는 최소 기능을 지시할 수 있는 언어이다. 어셈블리로 메모리 정보를 직접 가져올 수 있다. 고수준 언어(High-Level Language) - Hardware와 가까우면 Low 멀어지면 High로 나눈다. 컴파일러 VS 인터프리터 - 컴파일러: 코드를 기계어로 번역해주어 실행파일을 만든다. - 인터프리터: 프로그램(인터프리터)가 코드를 한 줄씩 실행한다. CPU로 넘겨서 바로 작동함과 동일하다. 컴파일러 언어 인터프리터 언어 프로그램 실행 절차 컴파일러가 ..