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.
"Dizi bildirimi" diziyi adlandırıp öğelerinin türünü belirtir. Dizideki öğe sayısını da tanımlayabilir. Dizi türüne sahip bir değişken, dizi öğelerinin türüne ilişkin bir işaretçi olarak kabul edilir.
Sözdizimi
declaration:
declaration-specifiers
init-declarator-list
Tercih;
init-declarator-list:
init-declarator
init-declarator-list
,
init-declarator
init-declarator:
declarator
declarator
=
initializer
declarator:
pointer
Tercihdirect-declarator
direct-declarator:
direct-declarator
[
constant-expression
Tercih]
İsteğe constant-expression bağlı olduğundan söz diziminin iki biçimi vardır:
İlk form bir dizi değişkeni tanımlar.
constant-expressionKöşeli ayraç içindeki bağımsız değişken dizideki öğelerin sayısını belirtir.constant-expressionvarsa, tam sayı türüne ve sıfırdan büyük bir değere sahip olmalıdır. Her öğe tarafından verilentype-specifiertüre sahiptir ve bu tür dışındavoidherhangi bir tür olabilir. Dizi öğesi bir işlev türü olamaz.İkinci form, başka bir yerde tanımlanmış bir değişken bildirir. Bağımsız değişkeni köşeli ayraç içinde atlar
constant-expressionancak köşeli ayraçları atlar. Bu formu yalnızca diziyi daha önce başlatmış, parametre olarak bildirmiş veya programın başka bir yerinde açıkça tanımlanmış bir diziye başvuru olarak bildirmişseniz kullanabilirsiniz.
Her iki biçimde direct-declarator de değişkeni adlandırın ve değişkenin türünü değiştirebilir. Aşağıdaki köşeli ayraçlar ([ ]) direct-declarator bildirimciyi bir dizi türüne dönüştürür.
Tür niteleyicileri, dizi türündeki bir nesnenin bildiriminde görünebilir, ancak niteleyiciler dizinin kendisi yerine öğelere uygulanır.
Dizi bildirimcisini bu formdaki köşeli ayraçlı sabit ifadelerin listesiyle izleyerek bir dizi dizisi ("çok boyutlu" dizi) bildirebilirsiniz:
type-specifierdeclarator[constant-expression][constant-expression]...
Köşeli ayraç içindeki her constant-expression biri belirli bir boyuttaki öğe sayısını tanımlar: iki boyutlu dizilerde iki köşeli ayraçlı ifade, üç boyutlu dizilerde üç vb. vardır. Diziyi başlatmış, parametre olarak bildirmiş veya programın başka bir yerinde açıkça tanımlanmış bir diziye başvuru olarak bildirdiyseniz ilk sabit ifadeyi atlayabilirsiniz.
Daha Karmaşık Bildirimcileri Yorumlama bölümünde açıklandığı gibi karmaşık bildirimcileri kullanarak çeşitli nesne türlerine yönelik işaretçi dizileri tanımlayabilirsiniz.
Diziler satıra göre depolanır. Örneğin, aşağıdaki dizi her biri üç sütunlu iki satırdan oluşur:
char A[2][3];
İlk satırın üç sütunu önce depolanır ve ardından ikinci satırın üç sütunu depolanır. Bu, son alt simgenin en hızlı şekilde değiştiği anlamına gelir.
Bir dizinin tek bir öğesine başvurmak için , SonEk İşleçleri'nde açıklandığı gibi bir alt simge ifadesi kullanın.
Örnekler
Bu örnekler dizi bildirimlerini gösterir:
float matrix[10][15];
adlı matrix iki boyutlu dizide her birinin türü olan 150 öğe vardır float .
struct {
float x, y;
} complex[100];
Bu örnek, bir yapı dizisinin bildirimidir. Bu dizide 100 öğe vardır; her öğe, iki üye içeren bir yapıdır.
extern char *name[];
Bu deyim, işaretçi chardizisinin türünü ve adını bildirir. gerçek tanımı name başka bir yerde gerçekleşir.
Microsoft'a Özgü
Bir dizinin en büyük boyutunu tutmak için gereken tamsayı türü, boyutudur size_t.
END Microsoft'a Özel