동적변수2 C의 포인터의 이해 동적변수는 프로그램의 실행 중 필요할 때 메모리를 확보(동적변수 생성)해서 사용하고 더 이상 필요 없으면 다른 프로그램들을 위해 메모리를 반환(동적변수 소멸)하는 방식으로 사용한다. C에서 이러한 동적변수의 생성과 해제는 표준 메모리관리 함수에 의해 수행된다. C의 표준 메모리 관리 함수들로는 malloc()과 calloc(), realloc(), free() 등이 있다. 동적변수는 프로그램의 실행도중 생성되고 소멸되기 때문에 프로그램을 작성할때 변수이름을 미리 결정할 수 없고, 항상 포인터 변수를 통해서 참조해야 한다.따라서 C프로그램에서 동적변수를 사용하려면 미리 포인터변수를 준비해 두어야 한다. 동적변수를 참조하기 위해 준비하는 포인터 변수 자체는 동적변수가 아니다. C프로그램에서 동적변수를 사용하.. 2024. 3. 16. C의 배열의 이해 C에서 배열과 포인터 변수의 차이는 각각 상수와 변수라는 점과 배열은 지정된 크기의 메모리들을 확보해서 항상 안전하게 참고할 수 있지만 포인터 변수는 그렇지 못하다는 점이다. 포인터 변수가 배열과 같은 시작주소를 가지게 되면, 배열에 의해 안전하게 확보된 메모리는 포인터 변수를 통해서도 안전하게 참조할 수 있게 된다. 예를 들면, 포인터 변수 p에 배열의 시작주소 x를 지정하면, 포인터 변수 p는 배열 x를 통해 마치 배열 p로 정의된 것처럼 사용할 수 있다. C에서 다차원 배열들은 행우선 순서로 메모리에 구현된다. 2차원 배열 x[3][4]는 각 원소들은 행우선 순서로 메모리에 순차적으로 저장되고, 배열명 x는 배열의 메모리 시작주소를 나타내는 포인터 상수이다. 2차원 배열명 x는 2차원 배열의 행 단.. 2024. 3. 16. 이전 1 다음