Bonde | |
---|---|
Sprog klasse | C-formet |
Udførelsestype | kompileret |
Dukkede op i | 1998 |
Forfatter | ITB CompuPhase |
Filtypenavn _ | .pwn, .p, .amx, .inc |
Frigøre | 4.0.5749 ( 18. oktober 2017 [1] ) |
Blev påvirket | Lille-C [2] |
Licens | zlib licens |
Internet side | compuphase.com/pawn/pawn... |
Mediefiler på Wikimedia Commons |
Pawn (tidligere Small ) [1] er et simpelt, utyperet 32-bit scriptsprog med en C - lignende syntaks . Compileren genererer P-kode (eller bytecode ) til at køre på den abstrakte maskine . Pawn kildekodefiler har filtypenavnet .pwn ; kompileret og klar til at køre - .amx . Et populært programmeringssprog til spilservere baseret på SAMP. Den har en usædvanlig compiler samt en kodeeditor - Pawno.
En introduktion til Pawn -sproget og til konceptet om en abstrakt maskine blev beskrevet fra en programmørs perspektiv og offentliggjort i Dr. Dobb's Journal [3] i oktober 1999 . Sproget var designet til nybegyndere , der lavede mange fejl i forbindelse med frigivelsen af computerhukommelse [ 4] .
Pawn var baseret på C -sproget . Målet for udviklerne var at forenkle og ændre C-sproget på en sådan måde, at sprogets syntaks ville undgå eller omgå de fejl, som uerfarne programmører begår. Valget af C-sproget var bestemt af det faktum, at dette sprog på det tidspunkt nåede det maksimale af sin udvikling og var ret populært [4] .
Der er 4 datatyper i Pawn -sproget:
"Hello World" ser næsten det samme ud som i C :
vigtigste () { print ( "Hej verden!" ); }Et eksempel på oprettelse og brug af en matrix til heltalsværdier:
#inkluder <kerne> main () { nyt array [ 4 ]; // Initialiser et array med 4 elementer array [ 0 ] = 43 ; // Ændre værdien af elementet ved indeks 0 array [ 1 ] = 10 ; // Ændre værdien af elementet ved indeks 1 array [ 2 ] = 799 ; // Ændre værdien af elementet ved indeks 2 array [ 3 ] = 121332 ; // Skift værdien af elementet med indeks 3 retur 1 ; // Returnerer 1 }Et eksempel på en loop og en if-else-sætning:
#inkluder <kerne> main () { nyt i ; for ( i = 0 ; i < 10 ; i ++ ) { hvis ( i != 9 ) { printf ( "%d" , i ); } andet { print ( "ni" ); } } retur 1 ; // Returnerer 1 }Et eksempel på brug af variable:
#inkluder <kerne> main () { ny a = 3 ; ny b = 1 ; printf ( "A er = %d, og B = %d" , a , b ); // Ved start vil den skrive: A = 3, og B = 1. returner 1 ; // Returnerer 1 }Et eksempel på brug af udtryksoperatorer:
#inkluder <kerne> main () { ny a = 1 ; ny b = 2 ; ny c = 3 ; if ( a < b ) print ( "A er mindre end B" ); // Ved start vil skrive: A er mindre end B hvis ( c != a ) print ( "C er ikke lig med A" ); // Ved opstart vil den skrive: C er ikke lig med A hvis ( a == 1 && a != b ) print ( "A er lig med 1 og er ikke lig med B" ); // Ved start vil skrive: A er 1 og ikke lig med B hvis ( b == 2 || c == 3 ) print ( "B er 2 eller C er 3" ); // Ved start vil skrive: B er lig med 2 eller C er lig med 3 return 1 ; // Returnerer 1 }Nogle eksempler på brug af Pawn -sproget :