2014-07-23 68 views
0

我有一個函數指針的聲明如下:什麼是clang equivaivalent這個聲明的函數指針__stdcall?

extern long (__stdcall *FooPtr)(int* i); 

也就是說,一個指向功能的函數指針與stdcall調用(在VS術語)被調用。

如何翻譯此聲明以便鏗鏘理解?

+0

'__attribute __((stdcall))'也許? – deviantfan

+1

你試過Google搜尋'clang stdcall'嗎?答案就在結果頁面上,你甚至不需要點擊任何結果。 – Mehrdad

+0

我也看到了,但由於標題它並不完全似乎是重複的。我們應該做些什麼嗎? –

回答

1
__attribute__((stdcall)) 

是正確答案:clang支持the following list of attributes,其語法與gcc的非常相似。

例如

#if defined(__clang__) || defined(__GNUC__) 
    #define stdCallConv __attribute__ ((stdcall)) 
#else 
    ...