본문 바로가기

전체 글308

상수 : 리터럴상수, 심볼릭상수 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 상수란 프로그램 실행 중에 계산으로 사용할 값정도 생각하면 될 것 같다. 리터럴 상수와 심볼릭 상수가 있는데 리터럴 상수는 데이터를 그대로 쓰는 것이라면 심볼릭 상수는 데이터에 이름을 지어 그 이름으로 상수를 사용하는 것이다. 1. 리터럴 상수 1 2 3 4 5 6 7 8 9 10 11 12 13 #include int main() { // 아래처럼 특정 자료형임을 강조하기 위해서 // 뒷부분에 추가처리를 하는 경우도 있다. float f = 3.14f; unsigned int n = 5u; long n.. 2021. 5. 7.
체력을 기르자 온탕에 오래 있으면 몸이 나른해지듯이 따뜻해진 날씨에 긴장감이 풀어지고 나른해진다. 피로감이 몰려와서 해야할 일에 체력적 부담을 느끼고 있다. 작년과는 다른 느낌에 체력을 길러야겠다는 생각이 강해진다. 20대인 나도 이러한데 어른들은 정말 대단하다. 괜히 런닝맨 유재석님이 그냥 운동하는게 아니라 해야만 일을 제대로 된 컨디션으로 할 수 있기 때문임을 조금 알 거 같다. 그럼 운동하러 간다아아 운동을 하고 나니 기분이 상쾌하다. 기운도 나고 너무 좋다. 삶쓰기에 요즘 나의 이야기를 넣을까하는 마음에 조금 더 써보려고 한다. 요즘 나의 최대 관심사는 졸업논문/졸업 후에는?/데이터&로봇이다. 생각보다 긴 시간동안 조금씩 관심을 가지고 탐구해왔던 ROS기반 로봇구동을 주제로 졸업논문을 준비중이다. 연구실에서 R.. 2021. 5. 6.
2.7 문자형 char 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! Casting casting이란 이미 자료형이 선언된 변수를 다른 자료형으로 찍어내는 것을 의미한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #include int main() { using namespace std; char c1(65); char c2('A'); cout 2021. 5. 6.
2.6 불리언 자료형 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 불리언 자료형과 and, or 연산자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 #include int main() { using namespace std; bool b1 = true; // copy initialization bool b2(false); // direct initialization bool b3{ true }; // uniform initializaiton //cout 2021. 5. 5.
2.3 ~ 2.5 고정너비정수, void, double, 절단오차 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 2.3 고정너비 정수 플랫폼, 컴파일러에 따라서 자료형에 할당되는 메모리가 조금씩 다를 수 있다. 하지만 이러한 불확실한 점은 개발자에게 있어서 불안하다. C++11부터는 고정적인 너비를 정하여 이러한 불확실성을 없애는 기능을 넣었다. 아직 쓸일은 잘 없고 이런게 있다~ 정도 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include int main() { //16_t : 16 bits std::int16_t i(5); // integer가 아닌 char .. 2021. 5. 5.
2.2 정수형 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 요지 : 각 자료형에는 가질 수 있는 데이터양의 제한이 있고 그 범위를 넘어서는 데이터를 선언하면 문제가 발생한다. # 각 자료형이 차지하는 메모리크기 파악 (단, char만 정수형이 아니다.) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include int main() { using namespace std; short s = 1; int i = 1; long l = 1; long long ll = 1; char c = 'c'; cout 2021. 5. 4.
2.1 기본자료형 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 2.1 기본자료형 : 자료형마다 데이터 사용량, 사용방식이 조금씩 다르다. 컴퓨터는 기본적으로 전압이 높고 낮음에 따른 0,1 둘밖에 다루지 못한다 1 bit = 0 or 1 1 byte = 8 bit 가 된다. 예를 들어서 0 은 1bit이고 0100 은 4 bit 01001001은 8 bit = 1 byte가 된다. 아래 그림을 보면 문자와 숫자가 얼마만큼의 메모리를 차지하는지 알 수 있다. 문자는 개수가 많지 않아 1byte만을 사용한다. 하지만 정수는 그 수가 매우 많아 4byte를 사용한다. #.. 2021. 5. 3.
1.12 ~ 1.13 헤더가드가 필요한 이유(LINK ERROR), Namespace 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 1.12 헤더가드가 필요한 이유 앞서 함수의 정의를 cpp파일에, 함수의 선언을 header파일에 쪼개어 정리하는 방법을 배웠다. 그런데 하다보면 바쁜 상황에서 함수안에 함수가 있게되고, main파일에 중복으로 함수를 불러오는 경우가 생긴다. 이 때, 함수가 중복이되면 빌드에러가 발생하는데 이를 방지하기 위한 것이 헤더가드이다. 1.13 Namespace 활용 #에러코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include int dosomething(int a.. 2021. 5. 3.
1.10~ 1.11 함수파일쪼개기, 헤더파일 만들기 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 매우 긴 코드. 매우많은 함수가 있는 상황에서 main함수는 저 뒤에 있어 보이지도 않고 함수들만 보일 때, 함수를 저멀리 뒤로 보내고 main함수를 앞으로 불러오는 대신에 선언과 정의를 구분하여 코드를 정리할 수 있다. 1.10 선언과 정의 분리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include using namespace std; //forward declaration int add(int a, int b).. 2021. 5. 2.
삼항연산자, 보기 좋은 코드 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 삼항연산자 int y = (x > 0) ? 1 : 2; 괄호안이 참이면 ?뒤 왼쪽 수를 y에 대입 1 2 3 4 5 6 7 8 9 10 11 12 13 #include using namespace std; int main() { int x = 2; int y = (x > 0) ? 1 : 2; cout 2021. 5. 2.
1.7 지역범위(Local Scope) 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 첫번째 x, 두번째 x, 세번째 x는 식별자 이름은 같지만 해당 지역({})에서만 존재하고 그 지역을 벗어나면 사라진다. 다른 메모리 공간이기 때문에 이름이 같아도 상관이 없다. 반면에, 새로운 괄호안에서 int x로 새로운 객체정의가 아닌 기존의 객체x에 할당하는 x=을 쓴다면 바깥 영역의 x 메모리에 할당하게 된다. #연습문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include using namespace std; void doSomething(.. 2021. 5. 2.
1.6 키워드와 식별자 제가 빠르게 복기하기 좋게 정리한 글입니다. 파일을 추가하는 세세한 방법과 과정은 마지막에 첨부된 영상으로 확인하시면 좋을 것 같습니다 :) 강의목차의 번호와 같은 목차번호를 사용하고 있으니 참고하세요! 핵심 : 의미를 가지되, 간결한 것. 빠르게 타이핑하기 좋은 것. 협업자들의 문화에 맞는 것을 쓰자. 식별자 : 객체의 메모리 주소를 구분하기 위한 이름들 메모리 주소를 프로그래머가 알기 쉽게 지은 이름 주의사항 : 기존에 있는 함수, 기능의 것들과 겹쳐서는 안된다. 타이밍 속도를 높이기 위해서 처음에는 익숙치 않더라도 언더바(_)와 같은 자주, 많이 쓰이는 것들은 연습을 하자. 대문자 : shift + 예제) int total; o int _orange; o int VALUE; x 대문자로는 관습적으로.. 2021. 5. 2.