Lecția utiliza funcția sscanf - studiu de limba pion

Introducere. Rezumat.

Bună ora din zi, participanții la forum. Destul de des am folosi funcția sscanf. De ce? Este comod si practic. Și acesta poate fi utilizat nu numai în echipă, dar, de asemenea, de exemplu, atunci când descărcarea ceva din baza de date, așa cum fac eu. Să presupunem că există sistem auto. Pentru a nu crea două coloane pentru fiecare dintre cele două culori posibile ale vehiculului, puteți crea unul, în care să înregistreze valoarea formularului „tsvet_1, tsvet_2“. Înregistrare-am scris prin formatul:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Dar obține acum două valori trebuie să fie problematice din această linie. Vino la sscanf2 nostru de ajutor.

Descărcați sscanf2. Toate instrucțiunile de conectare stabilite în același subiect.

Astfel, funcția are următoarele argumente:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

În ceea ce privește separatori. De fapt, acest lucru este caracterul pe care îl distribuiți datele introduse. De exemplu, dacă argumentele sunt scrise separate printr-o virgulă, atunci divizorului va fi: <,>, dacă tija verticală, <|>, în cazul în bord, <->, dacă este gol, <>. Dacă favoarea unui separator de spațiu, atunci <> și nu se poate scrie.

În ceea ce privește tipurile de date pentru a prelua. Există 4 tipuri:

  • i, d - întregi (de exemplu, "1", "10", "120");
  • s [Size] - șir de caractere (de exemplu, "Forumul", "Da", "PW");
  • f - numărul fracționar (de exemplu, "17575", "-47.8" "100.99");
  • u - ID jucător sau o parte a unui nume (de exemplu "0", "1", "Vasya_Pet", "Vasya_Petrov");

Revenind la exemplul sscanf utilizare. Șirul variabil sunt înregistrate două culori: culoare1 și COLOR2, separate prin virgulă. Avem nevoie de fiecare dintre ele pentru a incrementa (creștere). Pentru a face acest lucru, în primul rând aveți nevoie pentru a obține fiecare culoare a liniei, și apoi le crește cu unul. Deoarece culorile sunt date de tip întreg, de a crea două variabile de tip întreg.

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Eliminarea ambele culori înregistrate, separate prin virgulă, dintr-un șir variabil.

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Din nou, deoarece culorile sunt de tip întreg, atunci folosim d în ambele cazuri. Apoi, totul este simplu, scrie înapoi la un șir de caractere folosind șirul de format doi plus o variabilă:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Dar este mai bine să facă acest lucru, dacă doriți să creați mai puțin stres asupra sistemului:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Extras din șirul de variabile trei argumente: timp UNIX dozării ore ban, UNIX timp de expirare ban de chat și pot provoca eliberarea. Acestea sunt înregistrate printr-un spațiu. UNIX timp, în ambele cazuri, devine un tip de date întreg, și asta e motivul - șir de caractere. Prin urmare, aspectul va fi atât: dds [100]. 100 Am de exemplu. Să presupunem că motivul pentru care lungimea maximă nu trebuie să depășească 100 de simboluri. În general, se pare ca acest lucru:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Crearea unei echipe de teleportarea la coordonatele specificate. Să presupunem coordonatele sunt înregistrate printr-o virgulă în șirul variabil. În acest caz, sscanf nostru ia forma următoare:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Acesta va fi util atunci când se utilizează această funcție în echipe:

sscanf returnează 0. Acest lucru înseamnă că, pentru a verifica dacă a fost posibil să se găsească toate aceste argumente trebuie să scrie:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.

comenzi Exemplu / goto. Puteți introduce coordonatele, puteți introduce ID Player sau puteți pur și simplu lăsați necompletat și teleporta la coordonatele date cod:

Vă rugăm să login sau inregistreaza-te pentru a vedea link-ul.