1. Šis tinklalapis naudoja slapukus. Tęsdami būvimą šiame tinklalapyje, jūs patvirtinate, jog sutinkate priimti slapukus. Sužinoti daugiau.

Teksto ilgio apskaičiavimas

Diskusija 'Serverio kūrimo pamokos' skyriuje nuo ES.^, Gruodis 13, 2015.

  1. ES.^

    ES.^ Gerai žinomas narys

    ES.^, Gruodis 13, 2015 #1
    Paskutinis pakeitimas: Gruodis 13, 2015
    Užsiregistravęs:
    Kovas 14, 2011
    Pranešimai:
    3,553
    Taškai už trofėjus:
    983
    Lytis:
    Vyras
    Vietovė:
    Klaipėda
    Pradžios puslapis:
    Įvertinimai:
    +304 / 0 / -0
    Teksto ilgio apskaičiavimas

    Sveiki. Pastebėjau, kad daug žmonių nemoka apskaičiuoti string'ų ilgių, tai sugalvojau parašyti pamoką. Šioje pamokoje paaiškinsiu kaip lengvai, greitai ir teisingai apskaičiuoti string'o ilgį.

    Pasiimame bet kokį string'ą, pvz:
    Pilnas kodas atrodys pvz taip:
    Kodas (pawn):
    new str[50]; // sukuriame masyvą
    format(str, 50, "Ping: %d, Score: %d, Money: %d", GetPlayerPing(playerid), GetPlayerScore(playerid), GetPlayerMoney(playerid)); // formatuojame ir įrašome tekstą į masyvą
    Suskaičiuojame visus simbolius, be specifikatorių (%d, %s, %f ir t.t).
    - rezultatas: 24 simboliai.
    Toliau, reikia suskaičiuoti galimą maksimalų simbolių skaičių kiekvieno specifikatoriaus išvestą informaciją.
    Ping - 5 simboliai (todėl, kad maksimalus ping yra: 65535 (jeigu neklystu)).
    Score - 10 simbolių (todėl, kad 32 bit'ų sistema daugiau nepalaiko (jeigu klystu, pataisykite)).
    Money - 10 simbolių (dėl tos pačios priežasties kaip ir Score).
    Ir +1 simbolis - kontrolinis ('\0' (NULL)), kuris žymi eilutės pabaigą (kitaip paaiškint nemoku).

    Sudedame ir gauname rezultatą: 24 + 5 + 10 + 10 + 1 = 50.
    Dėl patogumo rekomenduočiau naudoti lettercount + skaičiuotuvą arba string.gta-online.

    Autorius: ES.^
     
    • Informatyvus Informatyvus x 1

Dalintis šiuo puslapiu

Kraunama...