←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Opis takich znaków jak: "...


Najlepsza odpowiedź GwynBleidD 16.04.2015 16:38

Jako, że artykuł na wikibooks może być trochę trudny do zrozumienia, bo nie jest napisany prostym językiem. Dodatkowo w pawnie są pewne różnice (brak wskaźników, brak rzutowania, dodatkowy operator przesunięcia bitowego) napisałem artykuł:

Operatory w PAWNie Przejdź do postu
Zablokowany

  • +
  • -
Skull. - zdjęcie Skull. 16.04.2015

Witam Serdecznie!

 

Jak w temacie, otóż co nie co wiem jak działa lecz co do nie których rzeczy (że tak to nazwę) nie wiem.

A więc jest możliwość aby ktoś podał jakiś poradnik gdzie to jest opisane bądź opisał w tym temacie tak jak potrafi? Na pewno przyda to się wielu nowym użytkownikom który się dopiero uczą Scriptingu. :)

 

 

Postaram się wymienić tyle ile pamiętam aktualnie:

  1. &
  2. &&
  3. |
  4. ||
  5. =
  6. ==
  7. -=
  8. +=
  9. =-
  10. =+
  11. =<
  12. =>
  13. >=
  14. <=
  15. !=
  16. =!
  17. >
  18. <
  19. >>
  20. <<
  21. &=
  22. :
  23. ;
  24. |=
  25. ?
  26. !

 

Jeśli nie wpisałem jakoś znaku lub wpisałem znak który nie istnieje to proszę o poprawienie oraz przepraszam za błąd.

Zresztą człowiek się uczy na własnych błędach.

 

Oczywiście rozumiem że to co ja wymagam może być czasem czasochłonne, nawet bardzo (Przy bardziej rozwiniętym opisie).


Użytkownik Mr.Skull edytował ten post 16.04.2015 09:44
Odpowiedz

  • +
  • -
plx211 - zdjęcie plx211 16.04.2015

& - (binarna) bramka logiczna and
&& - bramka logiczna and
| - (binarna) bramka logiczna or
|| - bramka logiczna or
= - przypisanie wartości
== - w warunku równa się
-= - a-=2 to to samo co a=a-3
+= - a=a+2
=-
=+
=<
=>
>= w warunku większe bądź równe
<= w warunku mniejsze bądź równe
!= w warunku różne
=!
> większe
< mniejsze
>> przesuniecie bitowe w prawo
<< przesuniecie bitowe w lewo
&= a=a&2
:
; średnik, zazwyczaj oznacza "koniec wywołania funkcji"
|= a=a|2
? Stosowany do skróconego if'a
! W warunku not

Znaki są zależne od języka.
Tam gdzie nie ma opisu, nie pisałem aby nie odwalić.
(Binarne) chodzi o operacje na bitach, np. Porównanie danego bitu (nie całości)
Pisane z fona.
Odpowiedz

  • +
  • -
Skull. - zdjęcie Skull. 16.04.2015

& - (binarna) bramka logiczna and
&& - bramka logiczna and
| - (binarna) bramka logiczna or
|| - bramka logiczna or
= - przypisanie wartości
== - w warunku równa się
-= - a-=2 to to samo co a=a-3
+= - a=a+2
=-
=+
=<
=>
>= w warunku większe bądź równe
<= w warunku mniejsze bądź równe
!= w warunku różne
=!
> większe
< mniejsze
>> przesuniecie bitowe w prawo
<< przesuniecie bitowe w lewo
&= a=a&2
:
; średnik, zazwyczaj oznacza "koniec wywołania funkcji"
|= a=a|2
? Stosowany do skróconego if'a
! W warunku not

Znaki są zależne od języka.
Tam gdzie nie ma opisu, nie pisałem aby nie odwalić.
(Binarne) chodzi o operacje na bitach, np. Porównanie danego bitu (nie całości)
Pisane z fona.

Można prosić bardziej zrozumiale? (Nie wszystko rozumiem z tego + nowi skrypterzy mogą się już całkiem nie połapać).

Odpowiedz

  • +
  • -
MAGNET - zdjęcie MAGNET 16.04.2015

"Początkowo skrócona notacja miała następującą składnię: a =# b, co często prowadziło do niejasności, np. i =-1 (i = -1 czy też i = i-1?). Dlatego też zdecydowano się zmienić kolejność operatorów."
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 16.04.2015

Operatory w PAWNie zachowują się tak samo, jak operatory w języku C, więc polecam skorzystać z linku który podał plx211.

Odnośnie Twojej listy: nie istnieją operatory =-, =+, =!, =<, =>. Użycie 3ch pierwszych zaowocuje nieoczekiwanym skutkiem (pierwszy zamiast potraktowany jako -= zostanie potraktowany jako osobno = i -, np: x =- 3 jest tym samym, co x = -3, drugi analogicznie jednak znak plus zostanie zignorowany, trzeci zamiast porównać i zwrócić true dla nierówności i false dla równości, spróbuje przypisać zaprzeczenie logiczne wartości po jego prawej do zmiennej po lewej lub wywali błąd gdy po lewej nie ma zmiennej) a dwóch ostatnich błędem kompilacji.

Tak samo nie istnieją operatory =* =/ =% itp, we wszystkich operatorach używających 2ch znaków, w których występuje znak =, znak = występuje JAKO DRUGI, nigdy jako pierwszy.

Odpowiedz

  • +
  • -
Najlepsza odpowiedź GwynBleidD - zdjęcie GwynBleidD 16.04.2015

Jako, że artykuł na wikibooks może być trochę trudny do zrozumienia, bo nie jest napisany prostym językiem. Dodatkowo w pawnie są pewne różnice (brak wskaźników, brak rzutowania, dodatkowy operator przesunięcia bitowego) napisałem artykuł:

Operatory w PAWNie
Odpowiedz

  • +
  • -
grankee - zdjęcie grankee 17.04.2015


+= - a=a+2

a dokładniej

a+=2 to znaczy to samo co a=a+2

 

Odpowiedz

  • +
  • -
radim - zdjęcie radim 21.04.2015

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany