함수의 초기화 과정에서 종종 goto문을 사용하곤 한다. 예를 들면 열 가지 정도의 변수에 메모리를 할당 해 주는데, 다섯번째쯤 되는 변수를 처리하는 과정에서 오류가 발생했다고 가정해보자. 그럼 앞에 메모리가 할당된 네 개의 변수는 어떻게 될까? 할당해놓고 해제해 준 적이 없으니 메모리 누수상태가 된다. (Memory Leak) 그래서 변수 처리중에 에러가 발생 하면, 바로 return을 해버리는게 아니라 goto문을 이용하여 error 처리부로 이동시켜 메모리 해제해주는 작업을 거치게 된다. 윈도우에서 제공하는 try-finally 와 유사하다고 보면된다. goto문을 사용하는 간단한 예제는 다음과 같다. int Initialize() { // 이 예제에서는 CDialog라는 클래스가 있다고 가정한다...
c언어 - 함수포인터 (Function pointer) 오늘은 함수포인터에 대해서 포스팅을 하도록 하겠습니다.포인터가 무엇인지는 다들 아실텐데요, 특정 변수에 대한 메모리 주소를 담을 수 있는 변수를 포인터 변수라고 합니다. 그렇다면 함수포인터란, 특정 함수에 대한 메모리 주소를 담을 수 있는 것 이라고 정의할 수 있겠습니다. 함수포인터를 쓰는 이유는 무엇일까요? 프로그램 코드가 간결해집니다. 함수포인터를 배열에 담아서도 사용할 수 있으므로 중복되는 코드를 줄일 수 있습니다. 상황에 따라 해당되는 함수를 호출할 수 있으므로 굉장히 유용합니다. 그 외에도 함수 포인터를 이용하여 콜백함수를 구현할 수 있게 되는 등 편리하고 유용한 코드를 작성할 수 있게 됩니다. 우선 함수포인터의 모양에 대해 알아보도록 하겠..
- Total
- Today
- Yesterday
- Angular
- 챗봇
- 우분투 16.04
- Rx.js
- 안시 컬러
- QT
- Zone.js
- NgZone
- 타입스크립트
- typeScript
- vim
- zone
- 리눅스 터미널 색상
- qemu linux arm
- ZONES
- git proxy
- Swift
- observable
- itoa
- 안시 색상
- lua table
- angular2
- ECMA2015
- ansi color
- 폰트 조정
- JavaScript
- 스위프트
- git 설정
- C언어
- terminal 색
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |