C++

· C++/통신
서론https://dongyeop00.tistory.com/132 C++ - 소켓 프로그래밍 함수소켓 프로그래밍 함수socket 함수소켓을 생성하는 함수이며, 위와 같은 매개변수를 가지고 초기화를 한다.소켓 생성을 실패하면 -1을 반환socket(int domain, int type, int protocol);socket(네트워크 주소 체dongyeop00.tistory.com C++에서 지원하는 소켓 함수와 server와 client간의 통신을 알아보았으니 데이터를 주고 받는 프로그램을 만들어 보자. 먼저 서버부터 구현해보자WSADATAWSADATA는 Windows Sockets API(WinSock)에서 사용하는 데이터 구조체로, Windows 소켓 프로그래밍을 시작하기 전에 Winsock 라이브러리..
· C++/통신
소켓 프로그래밍 함수socket 함수소켓을 생성하는 함수이며, 위와 같은 매개변수를 가지고 초기화를 한다.소켓 생성을 실패하면 -1을 반환socket(int domain, int type, int protocol);socket(네트워크 주소 체계, 소켓 타입, 프로토콜);네트워크 주소 체계(int domain) : IPv4(AF_INET), IPv6(AF_INET6)소켓 타입(int type) : TCP(SOCK,STREAM), UDP(SOCK_DGRAM)프로토콜(int protocol) : TCP(IPPROPTO_TCP), UDP(IPPROTO_UDP), 대부분 0으로 설정하여 기본값 사용ex)SOCKET mySocket = socket(AF_INET, SOCK_STREAM, 0);//socket(네트..
· C++/통신
네트워크 프로그래밍이란?네트워크를 대상으로 입출력하는 프로그래밍을 의미한다.서로 다른 두 대 이상의 컴퓨터가 네트워크를 통해 데이터를 주고 받는 입출력 프로세스를 구현한 것이다. Socket이란?네트워크를 통해 데이터를 주고 받는 방법을 통신 규약에 맞게 함수로 구현해 놓은 것이다.이 함수들은 소켓의 생성, 연결, 데이터의 송수신 등의 작업 등을 구현 해놓은 API이다. 물론 Socket으로 네트워크 통신 기능을 구현하기 위해서는, 소켓의 생성, 만들어진 소켓을 통해 데이터를 주고 받는 절차에 대한 이해, 운영체제 및 프로그래밍 언어에 종속적으로 제공되는 소켓 API 사용법을 숙지해야 하지만, 개발자는 소켓의 구현만 고려하면 되는 프로그래밍 이점을 가진다. Socket Network Program 실행 ..
· C++
Map이란?key와 value로 구성된 pair 객체를 원소로 하는 컨테이너key는 중복 안됨value는 중복이 가능하다.특정 기준에 따라 원소들을 자동으로 정렬한다.위치가 계속 변경되므로 우너소에 직접 접근이 불가능하다.Map의 사용Map STL을 사용하기 위해서는 #include 헤더파일을 포함해야한다.#include  선언 방법map [name]#include #include using namespace std;int main() { //문자형 key, 정수형 value를 원소로하는 map1 생성 map map1; //정수형 key를 내림차순으로 저장하는 map2 생성 map> map2; //초기화 값이 있는 map3 생성 map map3 = { {"apple", "사과"}, {"banana"..
· C++
STL 컨테이너STL 컨테이너는 데이터를 보관하고 관리하기 위해서 필요한 여러가지 기능을 제공한다. Vector동적 배열로 배열의 크기를 변경할 수 있다.임의 접근이 가능하며, 뒤에서의 삽입이 빠르다.삽입, 삭제, 탐색 O(n), 임의 원소 접근 O(1) 보장한다.list연결리스트이므로 데이터를 순차적으로 접근하고 관리할 때 유용하다.위치에 상관없이 삽입과 삭제가 빠르다.삽입, 삭제 O(1), 탐색, 임의 원소 접근 O(n) 보장한다.deque임의 접근이 가능하며, 앞과 뒤에서의 삽입이 빠르다.삽입, 삭제, 탐색 O(1), 임의 원소 접근 O(n) 보장한다.map특정 키(key)로 데이터를 접근하고 관리할 수 있다.키로 값에 접근하며 삽입과 삭제가 빠르다.삽입, 삭제, 탐색 모두 O(log n) 보장se..
· C++
Stack이란?스택은 대표적인 LIFO 구조이다. 따라서 제일 마지막에 넣은 데이터가 처음으로 빠져나오는 것을 볼 수 있다.Stack의 사용stack STL을 사용하기 위해서는 #include 헤더파일을 포함해야한다.#include 선언 방법은 stack [변수 이름]이다.ex) vector myStack;스택 멤버 함수stack.push(element)스택에 데이터를 추가stack.pop()스택에 데이터를 삭제stack.top()스택의 제일 위 데이터 반환스택이 비어 있다면 정의되지 않은 동작(Undefined Behavior) 예외 처리 발생 stack.size()스택의 사이즈 반환stack.empty()스택이 비어있는지 확인비어 있으면 1을 반환, 비어 있지 않으면 0을 반환합니다.stack.sw..
구동엽
'C++' 카테고리의 글 목록