Ana içeriğe geç

Anahtar Kelimeler: Operatörler

char

char, bir paketlenmiş dize içinde verilen karakter sayısını tutmak için gereken hücre sayısını döndürür. Yani belirli bir bayi sayısını tutmak için gereken 4 bayilik hücre sayısını. Örneğin:

4 char

1 döndürür.

3 char

1 döndürür (bir değişkenin 3/4'ünü alamazsınız).

256 char

64 döndürür (256'yı 4'e bölerseniz).

Bu genellikle değişken bildirimlerinde kullanılır.

new
someVar[40 char];

10 hücrelik bir dizi yapacaktır.

Paketlenmiş diziler hakkında daha fazla bilgi için pawn-lang.pdf'ye başvurun.

defined

Bir sembolün var olup olmadığını kontrol eder. Genellikle #if ifadelerinde kullanılır:

new
someVar = 5;
#if defined someVar
printf("%d", someVar);
#else
#error The variable 'someVar' isn't defined
#endif

Genellikle bir tanımın tanımlanıp tanımlanmadığını kontrol etmek ve buna göre kod üretmek için kullanılır:

#define FILTERSCRIPT

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
return 1;
}

#else

public OnGameModeInit()
{
return 1;
}

#endif

sizeof

Bir dizinin ELEMANLAR cinsinden boyutunu döndürür:

new
someVar[10];
printf("%d", sizeof (someVar));

Çıkış:

10

Ve:

new
someVar[2][10];
printf("%d %d", sizeof (someVar), sizeof (someVar[]));

Şunu verir:

2 10

state

Bu tekrar PAWN otanom koduyla ilgilidir ve bu nedenle burada ele alınmaz.

tagof

Bu, bir değişkenin etiketini temsil eden bir sayı döndürür:

new
someVar,
Float:someFloat;
printf("%d %d", tagof (someVar), tagof (someFloat));

Şunu verir:

-./,),(-*,( -1073741820

Bu hafif bir hata olsa da temelde şunu ifade eder:

0x80000000 0xC0000004

Örneğin, bir değişkenin bir float (etiket 'Float:') olup olmadığını kontrol etmek için:

new Float: fValue = 6.9;

new tag = tagof (fValue);

if (tag == tagof (Float:))
{
print("float");
}
else
{
print("not a float");
}