메모리의 기본구조
포인터가 어느 구조에 있는 메모리인지 알아야 한다.
이전 까지 공부한 것은 스택
동적 할당을 사용한 후 부터는 '힙'이라는 메모리를 사용하게 됨.
메모리 구조.
3차원 배열의 구조
포인터 자료형과 일반 자료형의 차이점
포인터변수의 역참조
포인터 연산
포인터의 연산시 메모리의 구조
배열 선언을 한 후, 그 배열의 주소값을 바꿀 수는 없다. 배열의 이름은 포인터 상수로 지정되기 때문.
코드의 구조
정적할당과 동적할당의 구분 필요!
동적할당 후 free를 이용하여 동적할당을 해제하는 이유?
동적할당을 해제해주지 않으면, 그 주소값을 잃어버리고, 잃어버린 주소값은 두번다시 찾을 수 없다.
운영체제는 해제해주지 않으면, 그 주소값이 저장된 공간을 사용할 수 있다는 것을 인지하지 못한다.
그래서 해제하지 않은채로 계속 프로그램을 실행하면, 그때마다 운영체제는 새로운 메모리 구역을 만들고,
그로 인해 메모리의 공간은 줄어들게 된다.
Tcp/ip
네트워크 프로그래밍과 소켓의 이해
soket()
소켓은 쉽게 말하면 전화기다. soket()이란 함수가 소켓을 생성 한다는 정도로만 이해하면 된다.
#include <sys/socket.h>
int socket(int domain, int type, int prtocol);
성공 시 파일 디스크립터, 실패시 -1 반환
프로세스 동기화와 비동기화의 용어 차이점 알아두기.
멀티 프로세스/ 스레드
'TCP&IP' 카테고리의 다른 글
TCP/IP 5장 기반서버/클라이언트 2 (0) | 2024.09.04 |
---|---|
TCP/IP 4장 기반서버/클라이언트1 (0) | 2024.09.03 |
TCP/IP 3장 주소체계와 데이터 정렬 (0) | 2024.09.03 |
TCP/IP 2.장 소켓의 프로토콜과 그에 따른 데이터 전송 특성 (0) | 2024.09.03 |
TCP/IP 1.장 네트워크 프로그래밍과 소켓의 이해 (0) | 2024.09.03 |
댓글