2010년 8월 25일 수요일

do {...} while(0) 와 C4127 워닝

http://cnicholson.net/2009/03/stupid-c-tricks-dowhile0-and-c4127/

참고하자.
난 위글중 덧글에서 제시한 false 를 리턴해주는 인라인 함수를 쓰는 방식을 사용중.

음 역시 워닝레벨 높이면 여러모로 피곤하다.


추가.
아래쪽 덧글에 false 리턴하는 인라인 함수를 부르는 코드가 최적화되면서 날아가지 않고 바이너리에 남는 다는 말이 있네. 좀더 읽어보고 써야 겠다.

2010년 8월 11일 수요일

GUI 프로토타이핑 툴들

오리지날 위키에 정리가 잘 되어있다.
http://c2.com/cgi/wiki?GuiPrototypingTools


무료이고 코딩없이(비개발자가) 사용가능해야 한다는 조건으로 몇개 찾아봤는데
pencil 이 가장 나아보인다.
http://pencil.evolus.vn



2010년 7월 9일 금요일

C/C++ predefined macro

http://predef.sourceforge.net/

이거 항상 급할때 찾으면 잘 안보이네
여기도 적어둔다

haskell 로 Win32 HelloWorld 만들어봤다..

haskell 에 Win32 패키지가 어느정도 써먹을수 있는지 궁금해서 google 에서 win32 api hello world 코드를 찾아내서 haskell 로 옮겨봤다. 다시 생각해보면 미친짓이었음.

http://www.codepedia.com/1/Win32APIHelloWorld



펼쳐두기..



2010년 7월 7일 수요일

msvc 디버깅 커맨드 윈도우

http://msdn.microsoft.com/en-us/library/c785s0kz.aspx

간단히 말해서 gdb 에서 call fun() 을 하려면 visual studio 에서는 ? fun() 하면 된다.
visual studio 는 거의 안써서 매번 까먹음ㅋ

2010년 7월 5일 월요일

emacs-for-python

http://gabrielelanaro.github.com/emacs-for-python/


저놈을 쓰고 싶은 욕구는 당장 없지만 PyFlakes 라는놈이 눈에 보이길래 적어둔다.
pycheck, pylint 모두 써봤는데.. 다음엔 저놈 한번 써보자.

2010년 6월 25일 금요일

AstroGrep

http://astrogrep.sourceforge.net/

보통은 gnu global, cscope 등의 태그 프로그램이나 hgtk 의 검색기능을 쓰지만
가끔 급하게 내가 관리하지 않는, 그것도 생소한 언어의 소스들을 뒤져볼때가 있다.
그럴때 윈도 상황이라면 xp 의 검색기능을 종종 썼었는데..

윈도7 검색기능은 병신이 됐더라.
급히 파일내검색을 하고싶은데(grep) win7 은 정말 머저리 같이 돌더군.


적절히 뒤져서
http://superuser.com/questions/60173/how-to-search-inside-files-in-windows-7
에서 AstroGrep 이란걸 알게되서 사용중.


2010년 6월 23일 수요일

MessagePack, Extremely efficient object serialization library for cross-language communication

bencoding 을 즐겨 쓰는 편인데 이놈은 좀 컴팩트한맛이 덜해서 튜닝을 해야 하나 했는데..
마침 이런게 보이네. 다음엔 이놈을 써보자.


http://msgpack.org/

2010년 6월 11일 금요일

less 로 ansi color 포함된 텍스트 읽기

개발시엔 로그에 ansi color 를 써서 눈에 편하도록 남기는걸 좋아하는데 그냥 콘솔로 뿌리면서 보기엔 좋지만 파일에 남긴거 볼땐 좀 불편하다.

음 더 적을 시간이 없군.



결론
less -R 파일

2010년 6월 8일 화요일

cmake 로 버전 컨트롤 리비전 매번 따오기

make 때는 어렵지 않았는데 cmake 는 좀 성가시네
아래 링크 한번 읽어보자.
http://www.mail-archive.com/cmake@cmake.org/msg25922.html

우리프로젝트에 아직 적용하지 않은상태.
후에 필요하면 위 방법 시도해보자.