전체 글(14830)
-
GND(GrouND)
GND(GrouND)접지라고도 표현하고 쉽게는 - 전원으로 이해하면 됩니다.시계에 건전지를 연결할 때 +(전원핀)에만 연결하면 사용할 수 없듯이 +와 -를 연결해 주어야 완전한 회로도가 완성됩니다.모든 부품에는 전류가 흐르기 때문에 모든 부품에는 1개 이상의 GND 연결이 필수적입니다. 일반적으로 GND 케이블은 검정색으로 표시하고 전원 연결 케이블은 빨간색으로 표시합니다.
-
realloc( ) 함수와 free( ) 함수
realloc()함수를 이용한 동적 메모리 재할당 malloc( ), calloc( )함수는 동적 메모리를 할당 후 메모리 변경 불가 메모리 변경 불가한 단점을 realloc( ) 함수로 해결 종류함수반환 값메모리 할당 함수void* realloc(void* p, size_t size);성공 : 재할당된 메모리의 시작 주소 반환 실패 : NULL 반환
-
포인터 배열, 포인터 배열 선언, 포인터 배열의 필요성
포인터 배열· 주소를 저장하고 있는 배열· 포인터 변수를 배열로 선언하는 것· 여러 행의 문자열을 처리할 때 사용(메모리 낭비를 최소화) 자료형 int* 포인터 배열의 자료형을 지정, 자료형 다음에 * 연산자를 붙임 포인터 배열 이름 pointer 주소를 저장할 배열의 이름을 지정 배열 길이 [3] 주소를 저장할 배열의 전체 길이를 지정 포인터 배열 선언
-
동적 메모리 할당 함수와 해제 함수
동적 메모리 할당 함수와 해제 함수stdlib.h 헤더파일 필요 (누락할 경우 경고메시지 발생)
-
동적 메모리 할당이 필요한 이유
동적 메모리 할당이 필요한 이유· 선언된 배열 요소의 수가 사용된 요소 수 보다 많은 경우 (메모리 낭비)· 선언된 배열 요소의 수가 사용된 요소의 수보다 적은 경우 (메모리 부족)· 배열 선언 시 배열 길이에 변수를 설정한 경우 에러 발생 선언된 배열 요소의 수가 사용된 요소 수 보다 많은 경우 (메모리 낭비)컴파일 타임에 미리 지정시 메모리 낭비 발생 int array[2]; // 선언된 배열 요소 수: 2개(8byte) array[0]=10, array[1]=20, array[2]=30; // 사용된 배열 요소 수: 3개(12byte) 배열 선언 시 배열 길이에 변수를 설정한 경우 에러 발생프로그래머가 필요한 메모리 크기를 예측할 수 없습니다. 따라서 동적 메모리 할당이 필요하게 됩니다.
-
정적 메모리 할당, 정적 메모리 할당의 한계
정적 메모리 할당프로그램이 시작되기 전에 미리 정해진 크기의 메모리를 할당 받게 됩니다.메모리의 크기는 프로그램이 시작하기 전에 결정됩니다.