전체 글199 분할구현 계산기를 만드는 소스코드를 헤더파일과 CPP 파일로 분리해서 코드를 작성해보자 func.h(헤더파일) // 함수의 기능은 구현하지 않고 선언만 함 int Add(int a, int b); - 헤더파일에서는 함수의 기능을 구현하지 않고 이런 함수가 있다라고 선언만 함 func.cpp(구현파일) // include는 전처리기로 func.h 파일의 내용을 모두 가져와서 #include 한 파일에 넣어준다 #include "func.h" int Add(int a, int b) { return a + b; } - 헤더파일에서 선언된 함수를 구현 - 선언된 함수가 존재하는 헤더파일을 참조하기 위해 #include 라는 전처리기를 사용한다. 구현하지 않은 함수를 호출하면 링크 단계에서의 에러발생한다. void tes.. 2022. 4. 26. 함수 함수 : 어떠한 기능을 수행하는 것 ex) 계산기의 덧셈을 수행하는 기능, 뺄셈을 수행하는 기능 모듈 : 하나의 프로그램을 구성하는 모든 것을 독립적으로 기능을 수행할 수 있는 최소 단위로 분리한 것 ex) 계산기(프로그램) -> 계산기에 포함된 연산(덧셈, 뺄셈, 나눗셈, 곱셈)기능들을 각각 독립적으로 기능을 수행할 수 있는 기능들로 분할 하는 것 모듈화 : 독립적으로 동작 가능한 기능들로 분리해서 사용하면 새로운 개발 요구사항이 들어왔을 경우 모듈이 되있는 것들을 조합해서 새로운 것을 빠르게 만들수 있고, 유지보수를 쉽게 할 수 있다. Q1) 하나의 기능(함수)은 독립적으로 재활용이 가능하게 최소 단위로 쪼개서 만들어야 하는 이유는? 1. 어떠한 큰 기능을 만들 때 독립적으로 재활용이 가능한 여러 기.. 2022. 4. 2. 비트 연산자 쉬프트 연산 unsigned char byte = 5; // 0 0 0 0 0 1 0 1 -> 2^2 + 2^0 byte 2^2*2배 + 2^0*2배 = 2^N승 만큼 2배증가해서 10이됨 byte 2^2*4배 + 2^0*4배 = 4배증가 20 byte >> 1; // 오른쪽으로 N(1)칸 이동 0 0 0 0 0 0 1 0 -> 2^2/2 + 2^0/2 = 2^N승 만큼 줄어들어서 2가 됨 비트곱(&), 비트합(|), XOR(^), 반전(~) ---> 이렇게 비트연산자를 공부하면 금방 까먹음 와닿지도 않고 비트 연산자가 언제 쓰이는지도 모르기 때문에 그러면 비트 연산자는 언제 쓰이는가?? 특정상태를 표현하는 경우) 게임 캐릭터의 상태값을 표현한다고 예시를 들어보자 // 캐릭터의 상태 #define HUN.. 2022. 3. 27. 논리 연산자 int a = 1 && 0; --> a값은 0 int a = -500 && 3.14; --> a값은 1 bool check = 0; --> 0 bool check = -200; --> 1 논리연산자 &&(AND), ||(OR), !(반대) 는 0(false)를 제외하고 모든 값을 1(true)로 인지한다. 2022. 3. 22. 증감 연산자 int a = 0; a++ // a는 1증가 ++a // a는 1증가 --> 정수나 실수같은 기본 자료형에서는 ++, -- 증감연산자가 1증가하거나 1감소하는 개념이지만, 나중에 포인터에서 이와 같은 개념이 틀리기 때문에 다음단계로 증가한다라고 일단 알아두자. ++이나 --가 수행되는 피연산자가 누구냐에 따라서 이 다음 단계라는 개념은 달라진다. 누구에게는 다음 단계가 10이 증가하는 것일수도 있고, 100이 증가하는 것일수도 있다. 특별한 사유가 없는 이상은 전위로 쓰는게 좋다??? Why? 클래스나 구조체 연산하는 경우 효율이 안좋은 함수를 호출할 문제가 있다?? 연산자 오버로딩 강의에서 다시 이유를 설명듣기 2022. 3. 21. 산술 연산자 실수와 연산을 하면 나머지가 발생할 수 있을까? float b = 10.0f % 3.0f float b = 10.f % 3 실수는 나머지를 구하는 연산작업이 불가능하다. Why? 10 나누기 3을 하게되면 몫이 3.3333..... 소수점아래 무한대로 반복되는데 어떻게 나머지를 구할 것인가? 실수의 데이터 타입 표기법 float a = 3.3f -> 실수의 소수점 뒤에 f를 붙이면 float 데이터로 간주한다. double a = 3.3 -> 실수의 소수점 뒤에 f를 붙이지 않으면 double 데이터로 간주한다. Q1) double형 데이터와 float형 데이터를 더할때 발생되는 문제는 무엇일까? float a = 3.3 + 3.3f 산술 연산자 실생활 예시 국어, 영어, 수학 3과목의 평균 구하기 in.. 2022. 3. 20. 이전 1 ··· 12 13 14 15 16 17 18 ··· 34 다음