main() 함수 이전 또는 이후에 함수 호출하는 3 가지 방법
여러분이 정의한 함수를 main 함수 이전에 호출되도록 할 수 있다는 것을 알고 계신가요? 보통은 함수를 정의하면 main 내에서 호출해서 사용하므로 main 시작 이전 또는 이후에 어떤 함수를 호출한다는 것은 불가능한 것으로 알고 있을겁니다. 하지만, 이를...
여러분이 정의한 함수를 main 함수 이전에 호출되도록 할 수 있다는 것을 알고 계신가요? 보통은 함수를 정의하면 main 내에서 호출해서 사용하므로 main 시작 이전 또는 이후에 어떤 함수를 호출한다는 것은 불가능한 것으로 알고 있을겁니다. 하지만, 이를...
여러분은 후킹(Hooking)이라는 것이 무엇인지 알고 계실 것입니다. 아직 이것이 무엇인지 모르시는 분은 http://ko.wikipedia.org/wiki/%ED%9B%84%ED%82%B9 에서 확인하고 다시 돌아오시길 바랍니다. 한마디로 중간에서 무언가를 가로채서 원래의 기능을 자기가 다시 정의한 기능으로 교체하는 기술이라고 보면 됩니다. 이러한 기술은 아주 여러 분야에서...
여러분은 C 나 C++ 프로그래밍을 할 때 errno 에 대해 고민해보신 적 있으신가요? errno 는 과연 thread safe 할까 아닐까? 다수의 thread 에서 errno 값을 마구 변경해대면 다른 thread 에서 보게 되는 errno 에도 영향이...
C 프로그램에서 완전히 동일한 이름을 가지는 함수가 둘 이상 존재할 때는 어떻게 동작하게 될지 궁금하지 않나요 ? 특정 파일 하나를 컴파일하여 object 를 만들 때는 해당 파일 내에 충돌되는 이름이 없으면 되겠지만, 만약 같은 이름의 함수를 가진 여러...
지난 시간에 mangling/demangling 에 대해 알아보았습니다. 자… 이번 시간에는 먼저 c++ 에서 c 의 함수를 호출하는 방법을 알아보도록 하죠. 먼저 지난 시간에 사용한 코드를 gcc 로 컴파일해둡니다. sh> cat test_func.c #include <stdio.h> void test_func(const char...
경험이 많은 프로그래머이건 적은 프로그래머이건 겪을 때마다 힘든 문제가 하나 있죠? ^^ 바로 문제를 발생시키는 코드는 잘 넘어가고 엉뚱한 어디에선가 SIGBUS 를 맞거나 이상한 동작을 하는 경우입니다. 차라리 문제를 발생시키는 코드에서 바로 죽어버리면 문제 해결이...
메모리에 대한 접근이 워낙 느리니 캐쉬와 압축을 이용해서 memcpy 보다 더 빠르게 하는 기술도 있군요. blosc.orgSending Data from Memory to CPU (and back) Faster than Memcpy by Francesc AltedWhy Modern CPUs Are stArving And WhAt...
1. library source 파일 작성 /* shlibtest.c */ #include <stdio.h> int aa() { printf(“aa\n”); } int bb() { printf(“bb\n”); } 2. shared library 빌드 gcc -shared -fPIC -o shlibtest.so shlibtest.c 3....
최신 댓글