반응형

malloc 2

[C언어] 82. 동적 메모리 할당 함수

82. 동적 메모리 할당 함수 C언어에서는 데이터를 관리하기 위해 메모리를 할당받는 방법으로 변수 선언을 제공하고 있어요. 그런데 변수 선언으로 메모리를 할당받는 것은 컴파일러 시점에 할당할 메모리 크기를 결정해요. 물론 실제 메모리를 할당하는 시점은 프로그램이 실행 중에 할당하지만 할당할 크기를 결정하는 것은 컴파일 시점이예요. 그런데 프로그래밍하다 보면 할당할 메모리 크기를 컴파일 시점이 아닌 프로그램 실행 중에 결정할 때도 있어요. 학생 관리 프로그램에서 최대 관리할 학생 수를 최종 사용자가 결정할 수 있다면 개발자가 정하는 것보다 훨씬 유연하겠죠. C언어에서는 표준 라이브러리 함수로 동적 메모리 할당 관련 함수를 제공하고 있어요. void *malloc(size_t size); void *call..

스택 - 버퍼를 동적 할당, 정수 형식 보관, C언어 소스

스택 - 버퍼를 동적 할당, 정수 형식 보관, C언어 소스 //스택 - 버퍼를 동적 할당, 정수 형식 보관 #include #include typedef struct Stack //Stack 구조체 정의 { int *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스 }Stack; void InitStack(Stack *stack, int ssize);//스택 초기화 int IsFull(Stack *stack); //스택이 꽉 찼는지 확인 int IsEmpty(Stack *stack); //스택이 비었는지 확인 void Push(Stack *stack, int data); //스택에 보관 int Pop(Stack *stack); //스택에서 꺼냄 void D..

반응형