__cdecl, __stdcall

bizzare의 이미지

리눅스/유닉스에서 만든 함수는 기본적으로
윈도우의 __cdecl과 동일한 방식으로 생성되는 것으로 알고 있습니다.

리눅스/유닉스에서
그러면 __stdcall과 같은 방식으로 생성하기 위해서는 어떻게 하는지요?

그리고 __cdecl과 같은 방식으로 생성하도록 하는 것을 명시적으로 표현하는 방법은 없는지요?

aqwerf의 이미지

Quote:
그리고 __cdecl과 같은 방식으로 생성하도록 하는 것을 명시적으로 표현하는 방법은 없는지요?

그냥 아무 것도 않쓰면 C 함수는 cdecl입니다.

익명 사용자의 이미지

// cdecl
void func() {
}

// cdecl
void __cdecl func() {
}

// stdcall
void __stdcall func() {
}

// fastcall
void __fastcall func() {
}

각자 차이는 아시죠?