본문 바로가기

<비공식 번역>awesome-c Beginner번역: function2.c function2.c /** * This is an example of more complex function usage in C. * Read structs.c before continuing. */ #include // Good reference: // http://www.dirac.org/linux/programming/tutorials/function_pointers/ typedef struct { int legs; void (*sayName)(void); } Animal; void catSayName() { printf("I am a cat.\n"); } void dogSayName() { printf("I am a dog.\n"); } int sub(int a, int b) { return a.. 더보기
코딩호러 첫번째 권을 다 읽다. 드디어 장구하지만 짧았던 세월이 투입된 끝에 코딩호러 이펙티브 프로그래밍을 첫번째 권을 다 읽었습니다! 캬울! 아아 힘들었고 느낀 것도 많고 스러져간 것도 있고 스러져가는걸 다시 보수하기위해 남긴 것도 있고 꽤 괜찮았던 시간이었습니다. 이를 기념하며 책에서 제안하는 프로그래머의 권리장전을 첨부합니다! 더보기
[코딩호러] 사용자의 데이터를 손상하지 마라! and 커뮤니티의 의견을 듣되 너의 행동을 결정하도록 하지 말라! 코딩호러를 읽다가(오래도 읽는다 참..ㅋ) 최근 경험한 구절이 있어서 남겨봅니다. 1. 사용자의 데이터를 손상하지 마라!저는 윈도우 애플리케이션 개발자로서, 인턴때 테스트겸 실무적용겸으로 만든 소프트웨어를 하나 책임지고 있습니다. 그 소프트웨어는 회사의 솔루션의 데이터에 직접적으로 접근이 가능한,만들때는 몰랐지만 너무나도 위험한 애플리케이션입니다. 데이터들은 손상되면 데이터를 기반으로 다음동작을 이어나갈 수 있는 솔루션은 동작을 멈추거나, 비정상적으로 동작을 마치게됩니다. 물론 개발할 당시에도 이 점은 고려되어, 선배 개발자들의 리뷰를 통해 안정성을 검증하곤 했습니다.그러나 완전할 순 없었고, 이는 간헐적이며 재현이 어려운 버그로 나타났습니다. 일부 데이터를 갱신해야 함에도, 이전값이 보존되지 않고 새로.. 더보기
[MFC] 레지스트리 Wow6432Node 레지스트리 엔트리의 Wow6432는 윈도우즈의 64-bit 버전을 사용하고있음을 알려줍니다. OS는 64-bit의 윈도우즈에서의 32-bit 어플리케이션을 구동하는 HKEY_LOCAL_MACHINE\SOFTWARE 과 다른 Wow6432 값을 사용합니다. 32-bit 어플리케이션이 HKEY_LOCAL_MACHINE\SOFTWARE\\ 의 서브키값을 쿼리하면, 어플리케이션은 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\\ 의 키값에서 값을 읽습니다. registry reflector가 특정 값들을 32-bit 과 64-bit 레지스트리 값으로 복사를 하 last-writer-wins 접근방식으로 충돌을 해결합니다. [ 출처 : http://kaliuma.tistory.com/17.. 더보기
[MFC] 다이얼로그 시작과 동시에 윈도우 숨기기 WM_WINDOWPOSCHANGING 메시지를 추가한 다음에 아래와 같이 작성합니다. void CTestDlg::OnWindowPosChanging(WINDOWPOS* lpwndpos){ lpwndpos->flags &= ~SWP_SHOWWINDOW; // 더보기