본문 바로가기

전체 글

(259)
17장. 구조체 - 여러개의 변수를 묶어 하나의 객체를 표현하고자 할 때 사용 - 배열과는 성질이 다름 배열 : 동일한 특성을 가지는 변수를 일렬로 나열 구조체 : 일종의 객체를 표현하고자 할때사용 - 게임에서 캐릭터, 몬스터, 학생, 좌표 등 다양한 객체를 모두 프로그래밍 언어를 이용해 표현할 수 있다. - 구조체는 현실 세계의 객체를 소스코드 상에서 매우 쉽게 표현할 수 있도록 한다. /* struct 구조체명{ 자료형1 변수명1; 자료형2 변수명2; ... }; */ # include struct Student{ char studentId[10]; char name[10]; int grade; char major[100]; } 1) 기본적으로 구조체 변수에 접근할 때는 온점(.)을 사용한다. struct Stude..
MongoDB 집계함수 1. MongoDB Aggregation Pipeline Mongo DB의 Aggregation Framework는 데이터 처리 파이프라인의 개념을 모델로 합니다. 문서는 여러 단계의 파이프라인을 거쳐 변화하고 하나의 문서의 형태로 집계할 수 있습니다. 파이프라인(pipeline) 이란, 이전 단계의 연산결과를 다음 단계연산에 이용하는 것을 의미합니다. $match : 조건에 만족하는 Document만 Filtering 입력형식 : { $match: { } } $group : Document에 대한 Grouping 연산을 수행 Group에 대한 id를 지정해야하고, 특정 필드에 대한 집계 연산이 가능 $group은 연산된 Document에 대한 정렬을 지원하지 않음 입력형식 - { $group: { _i..
16장. 함수 포인터 - C언어에서는 함수의 이름을 이용해 특정한 함수를 호출한다. - 함수 이름은 메모리 주소를 반환한다. - 함수포인터는 특정한 함수의 반환 자료형을 지정하는 방식으로 선언할 수 있다. - 함수포인터를 이용하면 형태가 같은 서로 다른 기능의 함수를 선택적으로 사용할 수 있다. - 반환자료형 (*이름)(매개변수) = 함수명; #include void myFunction(){ printf("It's my function."); } void yourFunction(){ printf("It's your function."); } int main(void){ void(*fp)() = myFunction; fp(); fp = yourFunction; fp(); system("pause"); return 0; } //..
14장. 다차원 배열과 포인터 배열 - 행렬 데이터를 표현할 때, 그래프 알고리즘을 처리할 때, 다수의 실생활 데이터를 처리할 때 등 사용 - 흔히 우리가 보는 표 구조가 2차원 배열과 흡사 - 2차원 배열 또한 기본적으로 0인덱스부터 시작 - 자료형 배열이름[행][열] = {{값, 값, 값,,,},{값, 값, 값,,,}} - 2중 for문과 함께 많이 사용 - 2차원 배열 이상의 다차원 배열 또한 사용할 수 있다. - 컴퓨터는 기본적으로 화면에 2차원 형태만 출력할 수 있다. - 배열은 포인터와 동일한 방식으로 동작한다. - 배열의 이름은 배열의 첫 번째 원소의 주소이다. - 유일한 차리점이라 하면, 포인터는 변수(값이 바뀔 수 있음)이며 배열의 이름은 상수(값이 바뀔 수 없음)이다. - 반대로 포인터를 배열처럼 사용할 수 있다. - 포..
MongoDB 설치 1. 몽고디비 설치 - MongoDB가 설치된 폴더에서 bin까지 이동한 후 해당 경로 복사 - path 설정에 들어가 복사한 경로 붙혀넣는다. - 서비스에서 실행중인지 확인 2. Robo 3T 설치 - Robo 3T에 관련된 페이지 https://robomongo.org/ Robo 3T | Free, open-source MongoDB GUI (formerly Robomongo) Read by Dmitry Schetnikovich robomongo.org - 다음 파일을 받아 실행시킨다. - 이름과 포트번호는 다음과 같이 준다. 3. NoSQL - 기존: 관계형 데이터베이스(RDBMS) SQL 언어로 사용 가능 SQL 데이터베이스 - 빅데이터: NoSQL 데이터베이스 - Not only SQL - RD..
Selenium 1. Selenium이란? https://selenium-python.readthedocs.io/ Selenium with Python — Selenium Python Bindings 2 documentation Note This is not an official documentation. If you would like to contribute to this documentation, you can fork this project in Github and send pull requests. You can also send your feedback to my email: baiju.m.mail AT gmail DOT com. So far 40+ community selenium-python.readthe..
[python] 프로그래머스 > level1 > 두 정수 사이의 합 - a와 b중 어떤게 큰지 경우의 수에 따라 나누어 분기처리하였다. - a와 b의 크기 비교를 저렇게 간단하게 표현할 수 있었던 것을 보고 감탄했다. - 다른 사람이 짠 좋은 코드를 많으 보며 배워야겠다 생각했다. - 밤에 푸니까 너무 졸려서 너무 쉬운것만 풀지만.... 푸는게 어디야.... 내일도 쉬운거라도 하나 풀자 :)
15강. 동적메모리할당 - 일반적으로 C언어에서 배열의 경우 사전에 적절한 크기만큼 할당해주어야 한다. - 우리가 원하는 만큼만 메모리를 할당해서 사용하고자 한다면 동적 메모리 할당을 사용한다. - 동적이라는 말의 의미는 '프로그램 실행 도중에' 라는 의미이다. - 동적메모리 할당을 수행할 때마다 할당되는 포인터의 주소는 변칙적이다. - 동적으로 할당된 변수는 에 저장된다. 1) C언어에서는 malloc() 함수를 이용해 원하는 만큼의 메모리 공간을 확보할 수 있다. 2) malloc() 함수는 메모리 할당에 성공하면 주소를 반환하고, 그렇지 않으면 NULL을 반환한다. 3) malloc() 함수는 라이브러리에 정의되어 있다. ex) malloc(할당할 바이트 크기); #include #include int main(void)..