C Anahtar Sözcükleri
Anahtar sözcükler , C derleyicisi için özel anlamı olan sözcüklerdir. 7. ve 8. çeviri aşamalarında, tanımlayıcı C anahtar sözcüğüyle aynı yazım ve büyük/küçük harfe sahip olamaz. Daha fazla bilgi için Bkz. Önişlemci Başvurusu'ndaki çeviri aşamaları. Tanımlayıcılar hakkında daha fazla bilgi için bkz . Tanımlayıcılar.
Standart C anahtar sözcükleri
C dili aşağıdaki anahtar sözcükleri kullanır:
auto
break
case
char
const
continue
default
do
double
else
enum
extern
float
for
goto
if
inline
1, a
int
long
register
restrict
1, a
return
short
signed
sizeof
static
struct
switch
typedef
typeof
typeof_unqual
union
unsigned
void
volatile
1 ISO C99'da tanıtılan anahtar sözcükler.
2 ISO C11'de tanıtılan anahtar sözcükler.
Visual Studio 2019 sürüm 16.8'den başlayarak, bu anahtar sözcükler veya /std:c17
derleyici seçenekleri belirtildiğinde C /std:c11
olarak derlenen kodda desteklenir.
b Visual Studio 2019 sürüm 16.8'den başlayarak, bu anahtar sözcükler derleyici tarafından C /std:c11
olarak derlenen kodda veya /std:c17
derleyici seçenekleri belirtildiğinde desteklenmez.
Anahtar sözcükleri yeniden tanımlayamazsınız. Ancak, C önişlemci yönergelerini kullanarak derlemeden önce anahtar sözcükleri değiştirmek için metin belirtebilirsiniz.
Microsoft'a özgü C anahtar sözcükleri
ANSI ve ISO C standartları, derleyici uygulamaları için önde gelen iki alt çizgiye sahip tanımlayıcıların ayrılmasına olanak sağlar. Microsoft kuralı, Microsoft'a özgü anahtar sözcük adlarından önce çift alt çizgi eklemektir. Bu sözcükler tanımlayıcı adları olarak kullanılamaz. Çift alt çizgi kullanımı dahil olmak üzere adlandırma tanımlayıcıları kurallarının açıklaması için bkz . Tanımlayıcılar.
Aşağıdaki anahtar sözcükler ve özel tanımlayıcılar, Microsoft C derleyicisi tarafından tanınmaktadır:
__asm
5
__based
3, 5
__cdecl
5
__declspec
5
__except
5
__fastcall
__finally
5
__inline
5
__int16
5
__int32
5
__int64
5
__int8
5
__leave
5
__restrict
__stdcall
5
__try
5
__typeof__
__typeof_unqual__
dllexport
4
dllimport
4
naked
4
static_assert
6
thread
4
3 Anahtar sözcüğü, __based
32 bit ve 64 bit hedef derlemeler için sınırlı kullanımlara sahiptir.
4 Bunlar ile __declspec
kullanıldığında özel tanımlayıcılardır; diğer bağlamlarda kullanımları kısıtlanmamıştır.
5 Önceki sürümlerle uyumluluk için, bu anahtar sözcükler hem öndeki iki alt çizgiyle hem de Microsoft uzantıları etkinleştirildiğinde tek bir ön alt çizgiyle kullanılabilir.
6 assert.h> dosyasını eklemezseniz<, Microsoft Visual C derleyicisi C11 _Static_assert
anahtar sözcüğüyle eşlerstatic_assert
.
Microsoft uzantıları varsayılan olarak etkindir. Taşınabilir kod oluşturmaya yardımcı olmak için derleme sırasında /Za (Dil uzantılarını devre dışı bırak) seçeneğini belirterek Microsoft uzantılarını devre dışı bırakabilirsiniz. Bu seçeneği kullandığınızda, Microsoft'a özgü bazı anahtar sözcükler devre dışı bırakılır.
Microsoft uzantıları etkinleştirildiğinde, programlarınızda yukarıda listelenen anahtar sözcükleri kullanabilirsiniz. Dil standardına uymak için bu anahtar sözcüklerin çoğunun önünde çift alt çizgi vardır. , , dllimport
naked
ve thread
olmak üzere dört özel durum dllexport
yalnızca ile __declspec
kullanılır ve baştaki çift alt çizgi gerektirmez. Geriye dönük uyumluluk için geriye kalan anahtar sözcüklerin tek alt çizgili biçimleri desteklenir.