rpmatch(3) Library Functions Manual rpmatch(3) NUME rpmatch - determina daca raspunsul la o intrebare este afirmativ sau negativ BIBLIOTECA Biblioteca C standard (libc, -lc) REZUMAT #include int rpmatch(const char *response); Cerine pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultai feature_test_macros(7)): rpmatch(): Incepand cu glibc 2.19: _DEFAULT_SOURCE glibc 2.19 i versiunile anterioare: _SVID_SOURCE DESCRIERE rpmatch() gestioneaza un raspuns al utilizatorului la intrebari de tip da sau nu, cu suport pentru internaionalizare. response ar trebui sa fie un ir de caractere cu terminaie nula care sa conina un raspuns furnizat de utilizator, probabil obinut cu fgets(3) sau getline(3). Preferinele de limba ale utilizatorului sunt luate in considerare de variabilele de mediu LANG, LC_MESSAGES i LC_ALL, daca programul a apelat setlocale(3) pentru a efectua modificari ale acestora. Indiferent de configuraia regionala, raspunsurile care se potrivesc cu ^[Yy] sunt intotdeauna acceptate ca fiind afirmative, iar cele care se potrivesc cu ^[Nn] sunt intotdeauna acceptate ca fiind negative. VALOAREA RETURNATA Dupa examinarea lui response, rpmatch() returneaza 0 pentru un raspuns negativ recunoscut (,,no"), 1 pentru un raspuns pozitiv recunoscut (,,yes") i -1 atunci cand valoarea lui response este nerecunoscuta. ERORI-IEIRE O valoare de returnare de -1 poate indica fie o intrare nevalida, fie o alta eroare. Este incorect sa se testeze numai daca valoarea de returnare este diferita de zero. rpmatch() poate eua din oricare dintre motivele pentru care regcomp(3) sau regexec(3) poate eua; cauza erorii nu este disponibila din errno sau din alta parte, dar indica un eec al motorului regex (dar acest caz nu se poate distinge de cel al unei valori nerecunoscute a lui response). ATRIBUTE Pentru o explicaie a termenilor folosii in aceasta seciune, a se vedea attributes(7). +-------------------------------+---------------------+----------------+ |Interfaa | Atribut | Valoare | +-------------------------------+---------------------+----------------+ |rpmatch() | Sigurana firelor | MT-Safe locale | +-------------------------------+---------------------+----------------+ STANDARDE Niciunul. ISTORIC GNU, FreeBSD, AIX. ERORI YESEXPR i NOEXPR din unele configuraii regionale (inclusiv ,,C") inspecteaza numai primul caracter din response. Acest lucru poate insemna ca ,,yno" .a., se rezolva la 1. Acesta este un efect secundar istoric nefericit care ar trebui sa fie corectat in timp cu o configuraie regionala adecvata i nu ar trebui sa impiedice rpmatch() sa fie modalitatea corecta de a distinge intre raspunsurile binare. EXEMPLE Urmatorul program afieaza rezultatele obinute atunci cand rpmatch() este aplicat la irul de caractere dat in argumentul din linia de comanda a programului. #define _DEFAULT_SOURCE #include #include #include #include int main(int argc, char *argv[]) { if (argc != 2 || strcmp(argv[1], "--help") == 0) { fprintf(stderr, "%s raspuns\n", argv[0]); exit(EXIT_FAILURE); } setlocale(LC_ALL, ""); printf("rpmatch() returneaza: %d\n", rpmatch(argv[1])); exit(EXIT_SUCCESS); } CONSULTAI I fgets(3), getline(3), nl_langinfo(3), regcomp(3), setlocale(3) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.06 31 octombrie 2023 rpmatch(3)