gongeerie

고정 헤더 영역

글 제목

메뉴 레이어

gongeerie

메뉴 리스트

    • 분류 전체보기 (101)
      • Diary (0)
      • Unity (16)
      • Django (0)
      • C# (17)
      • Javascript (9)
      • Data Analysing (0)
      • IT 기본소양 (8)
      • Redis (4)
      • Node.js (11)
      • Java (2)
      • C (4)
      • Android (3)
      • Tips (1)
      • Algorithm (4)
      • Linux (1)
      • git (1)
      • Mongodb (0)
      • HMTL (1)
      • Mysql (2)
      • 데이터 분석 (6)
      • Python (4)
      • LLM (3)

    검색 레이어

    gongeerie

    검색 영역

    컨텐츠 검색
    [typedef] About typedef in Function Pointer

    typedef 는 C코드에서 흔히 볼수 있는 말그대로 타입선언이다. 하지만 이 typedef를 제대로 활용하기 위해서는 이해가 필요하다. typedef는 전처리기가 아니라 명령어이기 때문에 반드시 문장 끝에 세미콜론(;)을 붙여주어야 하며 모든 변수타입을 지정할 수 있다. 이는 가동성의 증대와 변수 타입을 효율적으로 관리하도록 한다. 웬만한 하나의 모듈, 자체에는 사실상 엄청난 typedef문이 들어가 있다. 각 회사마다 프로그램 내 규정에 맞도록 자료형을 정해놓는다. typedef의 의미는 " 변수명을 타입이름으로 변경하는 기능 " 이라고 말할수 있다. 보통 typedef A B; 라는 문장은 B를 A로 표시 한다고 해석했으나 그런식으로 해석할 경우에는 해석이 불가능한 복잡한 문장들을 접할 수 있다. ..

    C 2023. 7. 25. 12:54

    [함수 호출 규약] __cdecl, __clrcall, __stdcall, __fastcall, __thiscall ,__vectorcall

    Calling Convention ( 함수 호출 규약 ) __cdecl __cdecl 은 C 및 C++ 프로그램의 기본 호출 규칙이다. 스택은 호출자에 의해 정리되기 때문에 vararg 함수를 수행할수 있다. __cdecl 호출규칙은 각 함수 호출에 스택 정리르 코드를 포함시키기 때문에 __stdcall 보다 큰 실행 가능 명령문을 생성한다. 요소구현 인수 전달 순서 오른쪽에서 왼쪽 스택 유지 관리 책임 호출하는 함수가 스택에서 인수를 꺼냅니다. 이름 데코레이션 규칙 밑줄 문자(_)는 C 링크를 사용하는 __cdecl 함수를 내보내는 경우를 제외하고 이름 앞에 붙습니다. 대/소문자 변환 규칙 대/소문자 변환은 수행되지 않습니다. 변수나 함수이름 앞에 __cdecl 한정자를 넣는다. C 명명 규칙 및 호출..

    C 2023. 7. 25. 12:53

    [Macro함수] 라이브러리 개발시 do while(0) 를 사용하는 이유

    우리가 흔히 아는 문법인 do while은 잘 사용하지 않은 문법입니다. 하지만 라이브러리를 개발할 시에 do while 0 문은 아주 안정한 라이브러리 개발을 위해 반드시 사용해야할 usage가 있습니다. 지금부터 그것을 소개 해볼게요~ C나 C++로 작성된 라이브러리에서 많이 볼수 있는데 라이브러리 코드 내에서 매크로 함수의 사용성은 아주 많습니다. 라이브러리안 매크로 함수와 라이브러리를 사용하는 사용자의 코드간 문제를 한번 다뤄 보겠습니다. #include #define SWAP(X, Y, T) { T t = X; X = Y; Y = t; } int main() { int a = 10, b = 20; if (true) SWAP(a, b, int); // 별 문제 없을 것 같았지만, 여기서 문제가 생..

    C 2023. 7. 25. 12:52

    [C] printf 구현하기

    printf를 직접 구현해보자 printf는 매개변수의 형식에 따라 매개변수 수가 바뀌는 가변인자 함수 이다. #include #include void myprint(const char* str, ...) { int i; int* idx = (int*)&str; //스택에 매개변수가 쌓일때 4byte크기로 쌓이기 때문에 int형 포인트를 설정해주었다. long으로 해도 상관 없다.4byte이기만 하면 된다. idx++; //현재 포인터는 str문자열의 포인터를 가리키고 있으므로 다음 매개변수를 가리키기 위해 4byte 다음 방을 가리키게 한다. while(*str != NULL) { if(*str == '%') { switch(*(str+1)) { case 'd': // int 형 매개변수 출력 prin..

    C 2023. 7. 17. 18:00

    추가 정보

    인기글

    최신글

    페이징

    이전
    1
    다음
    TISTORY
    gongeerie © 2023 metashower All rights reserved.
    페이스북 트위터 인스타그램 유투브 메일

    티스토리툴바