Pion | |
---|---|
Clasa de limba | în formă de C |
Tipul de execuție | compilate |
Aparut in | 1998 |
Autor | ITB CompuPhase |
Extensie de fișier | .pwn, .p, .amx, .inc |
Eliberare | 4.0.5749 ( 18 octombrie 2017 [1] ) |
A fost influențat | Mic-C [2] |
Licență | licență zlib |
Site-ul web | compuphase.com/pawn/pawn… |
Fișiere media la Wikimedia Commons |
Pawn (fost Small ) [1] este un limbaj de scripting simplu, netipizat , pe 32 de biți , cu o sintaxă asemănătoare C. Compilatorul generează P-code (sau bytecode ) pentru a rula pe mașina abstractă . Fișierele de cod sursă pion au extensia .pwn ; compilat și gata de rulare - .amx . Un limbaj de programare popular pentru serverele de jocuri bazat pe SAMP. Are un compilator neobișnuit, precum și un editor de cod - Pawno.
O introducere în limbajul Pawn și la conceptul de mașină abstractă a fost descrisă din perspectiva unui programator și publicată în Dr. Dobb's Journal [3] în octombrie 1999 . Limbajul a fost conceput pentru programatorii începători care au făcut multe greșeli legate de eliberarea memoriei computerului [4] .
Pawn a fost bazat pe limbajul C. Scopul dezvoltatorilor a fost de a simplifica și schimba limbajul C în așa fel încât sintaxa limbajului să evite sau să rezolve greșelile pe care le fac programatorii fără experiență. Alegerea limbajului C a fost determinată de faptul că acest limbaj a atins în acel moment maximul dezvoltării sale și a fost destul de popular [4] .
Există 4 tipuri de date în limbajul Pawn :
„Hello World” arată aproape la fel ca în C :
principal () { print ( "Bună lume!" ); }Un exemplu de creare și utilizare a unei matrice pentru valori întregi:
#include <core> principal () { matrice nouă [ 4 ]; // Initializeaza un tablou cu 4 elemente array [ 0 ] = 43 ; // Schimbă valoarea elementului la index 0 matrice [ 1 ] = 10 ; // Schimbați valoarea elementului la index 1 matrice [ 2 ] = 799 ; // Schimbați valoarea elementului la matricea index 2 [ 3 ] = 121332 ; // Schimbați valoarea elementului cu indicele 3 întoarcere 1 ; // Returnează 1 }Un exemplu de buclă și o instrucțiune if-else:
#include <core> principal () { i nou ; pentru ( i = 0 ; i < 10 ; i ++ ) { dacă ( i != 9 ) { printf ( "%d" , i ); } altfel { imprimare ( "nouă" ); } } întoarcere 1 ; // Returnează 1 }Un exemplu de utilizare a variabilelor:
#include <core> principal () { nou a = 3 ; nou b = 1 ; printf ( "A este = %d și B = %d" , a , b ); // La start se va scrie: A = 3, iar B = 1. return 1 ; // Returnează 1 }Un exemplu de utilizare a operatorilor de expresie:
#include <core> principal () { nou a = 1 ; nou b = 2 ; nou c = 3 ; if ( a < b ) print ( "A este mai mic decât B" ); // La început va scrie: A este mai mic decât B dacă ( c != a ) print ( "C nu este egal cu A" ); // La pornire va scrie: C nu este egal cu A dacă ( a == 1 && a != b ) print ( "A este egal cu 1 și nu este egal cu B" ); // La început se va scrie: A este 1 și nu este egal cu B dacă ( b == 2 || c == 3 ) print ( "B este 2 sau C este 3" ); // La început se va scrie: B este egal cu 2 sau C este egal cu 3 returnează 1 ; // Returnează 1 }Câteva exemple de utilizare a limbajului Pawn :