C/tolower: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
m usunięcie kategorii
Mina86 (dyskusja | edycje)
Połączone z tolower, zmieniony przykład, poprawienie linków w przykładzie
Linia 1:
===Deklaracja===
: #include <[[C/Biblioteka standardowa/Indeks tematyczny#ctype.h|ctype.h]]>
:int tolower(int c);
{
: int tolower(int c);
int toupper(int c);
 
===Opis===
:Funkcja tolower sprawdza, czy znakdany ''c''znak znajduje się w zadanym przez locale zestawie dużych liter. Jeślii jeśli tak przekształca go do odpowiedniej małej litery o ile to jest możliwe. Jeśli wartość ''c'' nie jest wartością typu <code>unsigned char</code> wtedy zachowanie funkcji jesttakowa nieokreśloneistnieje.
 
Funkcja toupper sprawdza, czy dany znak znajduje się w zadanym przez locale zestawie małych liter i jeśli tak przekształca go do odpowiedniej dużej litery o ile takowa istnieje.
===Pliku nagłówkowy===
:[[C/Biblioteka standardowa/Indeks tematyczny#ctype.h|ctype.h]]
 
 
===Opis===
:Funkcja sprawdza, czy znak ''c'' znajduje się w zadanym przez locale zestawie dużych liter. Jeśli tak przekształca go do odpowiedniej małej litery o ile to jest możliwe. Jeśli wartość ''c'' nie jest wartością typu <code>unsigned char</code> wtedy zachowanie funkcji jest nieokreślone.
 
===Argumenty===
* <tt>c</tt> wartość znaku reprezentowana w jako typ unsigned char lub wartość makra EOF. Z tego powodu, przed przekazaniem funkcji argumentu typu char lub signed char należy go zrzutować na typ unsigned char lub unsigned int.
 
===Wartość zwracana===
Jeżeli nastąpiła konwersja funkcje zwracają wartość odpowiadającego znaku (zawsze taką samą dla tego samego znaku w danych ustawieniach locale'i) w przeciwnym wypadku zwracają wartość niezmienioną.
:Funkcja zwraca ''c'' jeśli znak ''c'' nie jest wielką literą. Jeśli jest wielką literą zwraca kod odpowiadającej jej małej litery.
 
 
===Przykład użycia===
#include <localectype.h> /* dla funkcji [[setlocale]]toupper (i )tolower */
 
#include <locale.h> /* dla funkcji [[C/setlocale|setlocale]] */
#include <stdio.h>
#include <locale.h>/* dla funkcji [[setlocale]] ( ) */
char *strtolower(char *dest, const char *src, size_t n) {
#include <ctype.h>
int main if (void!n) {
return 0;
{
} else {
char t[] = "MĄKA\n";
char *wd = tdest;
while (*wsrc && --n>0) *d++ = tolower(*src++);
*d = 0;
[[putchar]] (tolower (*w++));
return dest;
[[setlocale]] (LC_ALL, "pl_PL"); /*przystosowanie do warunków polskich */
w = t;}
}
while (*w)
putchar (tolower (*w++));
char *strtoupper(char *dest, const char *src, size_t n) {
return 0;
if (!n) {
return 0;
} else {
char t[]*d = "MĄKA\n"dest;
while (*src && --n>0) *d++ = toupper(*src++);
*d = 0;
return dest;
}
}
int main(void) {
const char str[] = "Mąka Ćma";
char buf[sizeof str];
[[C/puts|puts]](strtolower(buf, str, sizeof buf));
puts(strtoupper(buf, str, sizeof buf));
[[C/setlocale|setlocale]] (LC_ALL, "pl_PL"); /* przystosowanie do warunków polskich */
puts(strtolower(buf, str, sizeof buf));
puts(strtoupper(buf, str, sizeof buf));
return 0;
}
 
:Powyższy program drukuje:
 
mąka Ćma
:Powyższy program drukuje:
MąKA ĆMA
::mĄka
:: mąka ćma
MĄKA ĆMA
 
===Zobacz też===
* [[C/toupper|toupper]]
* [[C/islower|islower]], [[C/isupper|isupper]]