목록..... (46)
루토's sssssstory
출처 : http://terzeron.net/wp/?p=245 1999/07/16 1장 소개 1) X Window System과 Tk의 소개 X 윈도우 시스템은 MIT와 DEC가 공동으로 개발한, 하드웨어와 OS에 독립적인 윈도우 시스템이다. 하드웨어와 OS에 독립적일 수 있는 이유는, X 클라이언트와 X 서버로 각각의 기능이 분리되어 있기 때문이다. X 서버는 장치구동기(device driver)를 통해 하드웨어와 OS를 제어하고, X 클라이언트는 X 프로토콜을 이용해 X 서버에게 윈도우 작업을 요청하게 되는 것이다. X 프로토콜은 사람이 이해하기 어렵기 때문에, Xlib을 이용하여 C로 X 윈도우 프로그래밍을 할 수 있도록 지원하고 있다. 그러나 Xlib조차 프로그래밍하기가 쉽지 않다. 아주 간단한 ..
출처 : http://terzeron.net/wp/?p=244 1999/05/15 소개 Tcl은 Tool Command Language, Tk는 Toolkit의 약자로서, 응용프로그램을 제어하고 확장하는 것을 돕는 프로그래밍 언어의 하나이다. Tcl의 장점은 Tk와 함께 사용되어 응용프로그램이 X Window를 손쉽게 다룰 수 있도록 할 수 있다는 데 있다. 물론 요즘에는 Scheme, Lisp, Perl 등의 강력한 경쟁자들이 생기긴 했지만, 아직도 많은 개발자들이 Tcl/Tk에 대해서 친근감을 느끼고 있다. 게다가 Tcl/Tk는 C source로 embed하여 사용할 수 있다는 강점을 가지고 있다. Tcl/Tk는 [티클티케이]라고 읽는다고 개발자 J. K. Ousterhout가 말했다. Ousterh..
erlang 관련 URLs http://www.erlang.org/doc/ (공식 사이트) http://groups.google.com/group/erlangstudy/web/erlang-otp-r12b-release-highlight (erlang study 관련 구글그룹) http://tempe.st/2007/05/erlang-ruby-and-php-battle-it-out/
C++은 C언어를 지원한다. 그래서 예전의 C소스를 가져다가 사용할 수 있다. C 언어는 symbol에서 함수의 이름만으로 찾을 수 있다. 이 것은 C언어가 같은 함수 이름을 사용하는 것을 허용하지 않기 때문인데, C++에서는 다형성으로 인해서 같은 이름을 사용할 수 있다. 그래서 함수이름만으로 찾는 것이 불가능하다. 이런 것을 위해서 내부적으로 함수 이름을 변경해주는데 이것이 name mangling 이다. 다음과 같이 된다. int foo(void) {return 1;} int foo(int ) {return 1;} void goo(void) { int i=foo(), j=f(0); } int _foo_i (void) {return 1;} int _foo_v (int ) {return 1;} void..
BFD 라이브러리란 오브젝트 파일 형식이 어떤 것이던 동일한 루틴을 사용해 오브젝트 파일에 접근하기 위해 GNU에서 만든 라이브러리 패키지. BFD는 크게 Front-end와 Back-end 두 부분으로 나누어져 있다. Front-end는 라이브러리 사용자에게 제공되는 Interface이며, Back-end는 특정 오브젝트 파일 형식을 접근할 수 있는 함수와 자료로 이루어져 있다. 아래는 GNU의 BFD Library 의 Document 페이지이다. http://www.gnu.org/software/binutils/manual/bfd-2.9.1/html_mono/bfd.html
Error LNK2005 : _DllMain@12 already defined cpp파일 내에서 DllMain 함수를 직접 구현하여 사용할 때 CString 등을 위해서 afx.h 를 include 시키게 되면 발생하는 에러이다. 일반적으로 이 LNK2005 에러는 다른 라이브러리 내에 DllMain이 포함되어 있는 경우에는 http://support.microsoft.com/kb/148652 에서 지시하는 대로 해결을 할 수가 있지만 cpp 파일내에서 DllMain을 직접 구현하여 사용할 경우에는 해당이 되질 않는다. 하지만 CString은 써야겠고... 이럴 때에는 afx.h 를 include시키지 말고 atlstr.h를 include시켜 사용하면 해결 할 수 있다. // #include #inclu..
The Function Pointer Tutorials Extensive Index 1. Introduction to Function Pointers 2. The Syntax of C and C++ Function Pointers 3. How to Implement Callbacks in C and C++ ? 4. Functors to encapsulate C and C++ Function Pointers 5. Topic Specific Links ------------------------------------------------------------------------------- Function Pointer에 대한 Tutorial이 있는 곳. Lars의 홈페이지 출처 : http://www.n..
출처 : http://www.ibm.com/developerworks/kr/library/opendw/20061219/ [오픈 디벨로퍼웍스]는 여러분이 직접 필자로 참가하는 코너입니다. 이번에는 김현우 님이 작성한 애플리케이션 개발시의 메모리 부족 에러에 대비하는 메모리 누수 발견 프로그램 개발 방법을 함께 살펴봅니다. 필자는 DVD 레코더와 셋톱박스의 복합 모델을 개발하는 팀에 소속되어 있다. 현재 유럽에서는 아날로그 방송을 디지털로 서서히 대체하고 있기 때문에, 관련 제품의 개발 요청이 쇄도하고 있다. 얼마 전 유럽을 타깃으로 3개의 유사 모델(D197, D198, D199)을 개발하고 있을 때의 일이다. 우여곡절 끝에 기본 모델인 D197 개발을 마치고 양산 시켰으며, D198도 완료하여 QA 그룹..
프로그램의 세계 1999년 12월에 특집 기사 글쓴이 : 배재현(goldbat@ncsoft.co.kr) ( NC소프트 ) HTML Formated & Rearranged : Daeyeon, Jeong TCP/IP 를 기반으로 한 온라인 게임 제작 최근들어 온라인 게임들이 점점 대중화되며 인기를 끌고 있다. 특히 수천 명이 하나의 서버에서 게임 내 가상스페이스를 공유하며 플레이하는 그래픽 머드의 개발과 동작원리는 게임 개발을 시작하려는 사람들에게 많은 관심의 대상이 되고 있다. 3부에서는 간단한 그래픽 머드의 서버와 클라이언트 프로그램을 구현하고 이를 통해 그 구조를 살펴본다. 온라인 게임과 싱글유저 게임은 사실 별다른 차이점이 없다. 이를 RPG로 한정하고 생각한다고 해도 유일하게 다른 점은 한가지뿐이다..
크리티컬 섹션에 관련된 함수 중의 TryEnterCriticalSection은 EnterCriticalSection함수 대신에 사용할 수 있는 함수인데 이 녀석은 Windows NT이상에만 사용할 수 있기 때문에 사용하기 위해서는 다음과 같은 일을 해주어야 한다. 1. #include ; TryEnterCriticalSection은 winbase.h에 선언되어 있다. 2. _WIN32_WINNT Define 두 가지 방법이 있다. 첫번째는 직접 소스코드에 define 해주거나 프로젝트 설정에서 Define해준다. 1) _WIN32_WINNT 은 windows.h를 include하기 전에 define해준다. #ifdef WIN32 #ifndef _WIN32_WINNT #define _WIN32_WINNT ..