Programarea cu c, c, java

În versiunea C99, limita de calificare este aplicată parametrului format.

Simbolul *. în picioare după semnul% și înainte de codul de format, va citi datele tipului specificat, dar va interzice atribuirea lor. Prin urmare, operatorul






Când introduceți date în formularul 10/20, puneți valoarea 10 în variabila x, aruncați semnul diviziei și atribuiți valoarea 20 la variabila y.

Comenzile de formatare pot conține modificatorul de lungime maximă. Este un număr întreg între caracterul% și codul format care limitează numărul de caractere citite pentru toate câmpurile. De exemplu, dacă aveți nevoie să citiți maximum 20 de caractere în variabila de adresă, se va folosi următoarea instrucțiune.

Dacă fluxul de intrare conține mai mult de 20 de caractere, atunci următoarea dată când accesați operația de introducere, citirea începe din momentul în care apelul scanf () anterior sa oprit. Dacă delimitatorul este întâlnit înainte ca lungimea maximă a câmpului să fie atinsă, introducerea datelor va fi finalizată. În acest caz, funcția scanf () continuă să citească câmpul următor.

Deși spațiile, tab-urile și delimitatoarele de linii sunt folosite ca delimitatori de câmp, atunci când citesc un singur caracter, ele sunt citite ca orice alt caracter. De exemplu, dacă fluxul de intrare este format din simboluri xy, atunci operatorul
pune caracterul x în variabila a, spațiul din variabila b și caracterul y din variabila c.

Amintiți-vă că orice caractere șir de control (inclusiv spații, tab-uri, și NEWLINE), caietul de sarcini non-format sunt utilizate pentru cartografiere și picătură de caractere din fluxul de intrare. Orice caractere corespunzătoare sunt aruncate. De exemplu, în cazul în care fluxul de intrare arata ca 10t20, operatorul






atribuie o valoare de 10 variabilei x și o valoare de y la 20. Simbolul t este aruncat, deoarece este prezent în linia de control.

Este important să rețineți că în setul de caractere scanate, se disting capitalul și literele minuscule. Prin urmare, pentru a scana atât literele mari cât și literele mici, trebuie să le specificați separat în setul de caractere scanate.

Modificatorii de format au fost adăugați funcției scanf () cu standardul C99

În versiunea C99, modificatorii de format hh sunt adăugați pentru utilizarea în funcția scanf (). ll. j. z și t. Modificatorul hh poate fi aplicat specificațiilor d. i. despre. u. x și n. Aceasta înseamnă că argumentul corespunzător este un indicator pentru o valoare a tipului de caractere semnat char sau nesemnate. Modificatorul ll poate fi aplicat și la specificațiile d. i. despre. u. x și n. Aceasta înseamnă că argumentul corespunzător este un pointer la o valoare a tipului semnat de long long int sau unsign long long int.

Modificatorul formatului j. care se aplică specificațiilor d. i. despre. u. x și n. înseamnă că argumentul corespunzător este un pointer la o valoare de tip intmax_t sau uintmax_t. Aceste tipuri sunt declarate în titlu și pentru a stoca cât mai multe posibile cifre.

Modificatorul de format este z. care se aplică specificațiilor d. i. despre. u. x și n. înseamnă că argumentul corespunzător este un pointer la un obiect de tip size_t. Acest tip este declarat în titlu și servește la stocarea rezultatului dimensiunii operației.

Modificatorul de format t. care se aplică specificațiilor d. i. despre. u. x și n. înseamnă că argumentul corespunzător este un pointer la un obiect de tip ptrdiff_t. Acest tip este declarat în titlu și servește pentru a stoca valoarea diferenței dintre cele două indicii.







Articole similare

Trimiteți-le prietenilor: