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.
Bu makalede C ve C++ ön işlemcisinin resmi dil bilgisi açıklanmaktadır. Ön işleme yönergeleri ve işleçlerinin söz dizimini kapsar. Daha fazla bilgi için bkz . Önişlemci ve Pragma yönergeleri ve __pragma ve _Pragma anahtar sözcükleri.
Dil bilgisi özeti tanımları
Terminaller, söz dizimi tanımındaki uç noktalardır. Başka bir çözüm mümkün değildir. Terminaller ayrılmış sözcükler kümesini ve kullanıcı tanımlı tanımlayıcıları içerir.
Terim olmayanlar söz dizimindeki yer tutuculardır. Çoğu, bu söz dizimi özetinde başka bir yerde tanımlanır. Tanımlar özyinelemeli olabilir. Aşağıdaki terimler, C++ Dil Başvurusu'nun Sözcük kuralları bölümünde tanımlanır:
constant, constant-expression, identifier, , keyword, operator, punctuator
İsteğe bağlı bir bileşen, alt indisli opt ile gösterilir. Örneğin, aşağıdaki söz dizimi küme ayraçları içine alınmış isteğe bağlı bir ifadeyi gösterir:
{expressionTercih }
Belge kuralları
Kurallar, sözdiziminin farklı bileşenleri için farklı yazı tipi öznitelikleri kullanır. Simgeler ve yazı tipleri aşağıdaki gibidir:
| Öznitelik | Açıklama |
|---|---|
nonterminal |
İtalik tür terminal olmayanları gösterir. |
#include |
Kalın türdeki terminaller, gösterildiği gibi girilmesi gereken sabit ayrılmış sözcükler ve simgelerdir. Bu bağlamdaki karakterler, her zaman büyük/küçük harfe duyarlıdır. |
| Tercih | Tercihin ardından gelen terimler her zaman isteğe bağlıdır. |
| varsayılan yazı tipi | Bu yazı tipinde açıklanan veya listelenen kümedeki karakterler, deyimlerde terminaller olarak kullanılabilir. |
Terim olmayan bir öğeyi izleyen iki nokta üst üste (:), tanımını tanıtır. Alternatif tanımlar, ayrı satırlarda listelenmiştir.
Kod söz dizimi bloklarında, varsayılan yazı tipindeki bu simgelerin özel bir anlamı vardır:
| Simge | Açıklama |
|---|---|
| [ ] | köşeli ayraçlar isteğe bağlı bir öğeyi çevreler. |
| { | } | Küme ayraçları, dikey çubuklarla ayrılmış alternatif öğeleri çevreler. |
| ... | Önceki öğe deseninin yinelenebilir olduğunu gösterir. |
Kod söz dizimi bloklarında virgüller (,), noktalı virgüller (.), noktalı virgüller (;), iki nokta üst üste (:), parantezler (( )), çift tırnaklar (") ve tek tırnaklar (') değişmez değerlerdir.
Ön işlemci dil bilgisi
control-line:
#defineidentifier token-stringTercih
#defineidentifier ( identifierseç , ... , identifiertercih et ) token-string
#include "path-spec"
#include <path-spec>
#linedigit-sequence "filename"Tercih
#undef identifier
#error token-string
#pragma token-string
constant-expression:
defined( identifier )
defined identifier
diğer sabit ifadeler
conditional:
if-partelif-partstercih et else-part endif-line
if-part:
if-line text
if-line:
#if constant-expression
#ifdef identifier
#ifndef identifier
elif-parts:
elif-line text
elif-parts elif-line text
elif-line:
#elif constant-expression
else-part:
else-line text
else-line:
#else
endif-line:
#endif
digit-sequence:
digit
digit-sequence digit
digit: biri
0 1 2 3 4 5 6 7 8 9
token-string:
Dizesi token
token:
keyword
identifier
constant
operator
punctuator
filename:
Yasal işletim sistemi dosya adı
path-spec:
Yasal dosya yolu
text:
Herhangi bir metin dizisi
Not
Aşağıdaki terimler, C++ Dil Başvurusu'nun Sözcük kuralları bölümünde genişletilir: constant, constant-expression, identifier, keyword, , operatorve punctuator.