기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

아래 소스는 업무용(?) 소스중 일부입니다

---------------------------------------------
#define AUDIOBOOK_FREE(ptr)
do {
    if ( ptr )  
    {  
        sys_free( ptr );    
        ptr = NULL;
    }  
}while (0)
---------------------------------------------

이 매크로의 경우 do/while문으로 감싸준게

무슨 이유인지 궁금해서요.

최적화나 아니면 아토믹 오퍼레이션(-_-) 이런거

아닐까 짐작은 하는데,  이해를 못하겠습니다 ㅎ

고현철

2006.11.08 23:55:52
*.117.46.252

target=_blank>http://mkseo.pe.kr/blog/?p=28


를 참조하시면 될 듯 합니다.

atomic이랑은 상관없고, C를 쓸 때 쓰는 스타일에 따라 구문에러가
날 가능성이 있기 때문에 do...while문으로 묶어주는 겁니다.

참고로 저는 프로그래밍할 때 항상 { }를 쓰기 때문에 보통은
do...while문으로 매크로를 사용하지 않습니다....^^

서연석

2006.11.09 00:19:26
*.94.41.89

아! 정말 놀랐습니다. ^^

세상의 모든것에는 다 이유가 있다고 말은 하는데,

이런 이유가 있는줄은 몰랐습니다.


#. 고현철님 항상 도움 감사합니다. ㅎ
List of Articles
번호 제목 글쓴이 날짜sort 조회 수

u-boot 컴파일 에러 입니다.==>[완료] [2]

SMDK2440에 호환되는 PCMCIA Card질문! [2]

JTAG관련 질문입니다...[완료] [2]

사운드 sample rate 관련 질문입니다. [1]

리눅스 커널 쓰레드 어플리케이션 설계관련자료 구합니다 ... [완료... [4]

매크로 선언에 관한 질문입니다 [완료] [2]

2440에 16C550 붙여보신분.... [5]

jffs2 마운트시 용량이 이미 사용중 <= 완료 [3]

혹시 Video 스위칭 IC쪽 아시는분 있나요... [1]

[긴급]I2C Interface [9]

TFT-LCD 프레임버퍼 드라이버를 수정할때 [3]

saa7111 을 이용해..[완료] [5]

GUI toolkit 선택 고민중...[완료] [7]

임베디드리눅스 GUI 를 선택해야 하는데 ... [2]

SDL 관련 질문 드립니다. [6]

추가 usb host 질문드립니다. ^^ => [완료] [8]

H/W RESET에 관한 질문입니다. ===> [완료] [3]

u-boot에서의 usb ohci 구현에 대해서 질문드립니다. ==> [완료] [2]

SDL Cross compile 질문 [3]

[완료] SDL Crosscompile 관련 질문

사용자 로그인