Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
bir işlev tanımındaki depolama sınıfı tanımlayıcısı işleve extern veya static depolama sınıfına verir.
Sözdizimi
function-definition:
declaration-specifiers
optattribute-seqopt optdeclaratordeclaration-listcompound-statement
/*
attribute-seq Microsoft'a özgü */
declaration-specifiers:
storage-class-specifier
declaration-specifiers
Tercih
type-specifier
declaration-specifiers
Tercih
type-qualifier
declaration-specifiers
Tercih
storage-class-specifier: /* İşlev tanımları için */
extern
static
İşlev tanımı bir storage-class-specifieriçermiyorsa, depolama sınıfı varsayılan olarak olur extern. Bir işlevi açıkça olarak externbildirebilirsiniz, ancak gerekli değildir.
bir işlevin bildirimi öğesini storage-class-specifierexterniçeriyorsa, tanımlayıcı, dosya kapsamına sahip tanımlayıcının görünür herhangi bir bildirimiyle aynı bağlantıya sahiptir. Dosya kapsamına sahip görünür bir bildirim yoksa, tanımlayıcının dış bağlantısı vardır. Bir tanımlayıcının dosya kapsamı varsa ve yoksa storage-class-specifier, tanımlayıcının dış bağlantısı vardır. Dış bağlantı, tanımlayıcının her örneğinin aynı nesneyi veya işlevi gösterdiği anlamına gelir. Bağlantı ve dosya kapsamı hakkında daha fazla bilgi için bkz . Yaşam Süresi, Kapsam, Görünürlük ve Bağlantı.
extern dışında depolama sınıfı tanımlayıcısına sahip blok kapsamı işlev bildirimleri hata oluşturur.
Depolama sınıfına sahip static bir işlev yalnızca içinde tanımlandığı kaynak dosyada görünür. İster açık ister örtük olarak depolama sınıfına sahip extern olsunlar, diğer tüm işlevler programdaki tüm kaynak dosyalarında görünür.
static Depolama sınıfı isteniyorsa, işlevin bildiriminin ilk oluşumunda (varsa) ve işlevin tanımında bildirilmelidir.
Microsoft'a Özgü
Microsoft uzantıları etkinleştirildiğinde, işlev tanımı aynı kaynak dosyadaysa ve tanım açıkça depolama sınıfını belirtiyorsaextern, başlangıçta depolama sınıfı olmadan (veya depolama sınıfıylastatic) bildirilen bir işleve depolama sınıfı verilirstatic.
/Ze derleyici seçeneğiyle derlendiğinde, anahtar sözcüğü kullanılarak extern bir blok içinde bildirilen işlevler genel görünürlüğe sahiptir; bu, /Za ile derlenirken doğru değildir. Kaynak kodun taşınabilirliği göz önünde bulundurulacaksa bu özelliğe bağlı kalmamalıdır.
END Microsoft'a Özgü