ANSI C 1

ANSI C 1



DODATEK B BIBLIOTEKA STANDARDOWA

cznej tablicy. Wywołanie tmpnam(s) wstawia tę nazwę do argumentu s i zwraca

wartość s. W tablicy s musi być miejsce przynajmniej dla I__tmpnam znaków.

Funkcja tmpnam przy każdym wywołaniu tworzy inną nazwę; gwarantuje się co najwyżej TMP_MAX różnych nazw podczas wykonywania programu. Zwróć uwagę na to, że funkcja tworzy nazwę, a nie plik.

int setvbuf(FILE 1stream, char 1buf, int modę, size_t size)

Funkcja setvbuf kontroluje buforowanie danych strumienia; musi być wywołana przed czytaniem, pisaniem lub jakąkolwiek inną operacją. Wartość _IOFBF argumentu modę oznacza pełne buforowanie, _IOLBF - buforowanie wierszy pliku tekstowego, a _IONBF - brak buforowania. Jeśli argument buf jest różny od NULL, to buforem będzie wskazany obszar; w przeciwnym przypadku bufor zostanie przydzielony. Argument size określa rozmiar bufora. W przypadku błędu funkcja setvbuf zwraca wartość różną od zera.

void setbuf (FILE 1stream, char 1buf)

Jeśli argument buf jest równy NULL, to buforowanie strumienia stream zostanie wyłączone. W przeciwnym przypadku setbuf jest równoważne (void)setvbuf(stream, buf, _IOFBF, BUFSIZ).

B1.2 Formatowane wyjście

Funkcje z rodziny printf realizują formatowane przekształcanie danych wyjściowych.

int fprintf(FILE 1stream, const char 1format, ...)

Funkcja fprintf, pod kontrolą argumentu format, przekształca i wypisuje pozostałe argumenty do strumienia wyjściowego stream. Wartość zwracana przez funkcję równa się liczbie wypisanych znaków lub jest liczbą ujemną w przypadku błędu.

Format zawiera znaki dwojakiego rodzaju: zwykłe znaki, które są bezpośrednio kopiowane do strumienia, i specyfikacje przekształcenia, które wskazują sposób przekształcenia i wypisania kolejnych argumentów funkcji. Specyfikacja przekształcenia rozpoczyna się znakiem % i kończy znakiem przekształcenia. Między % i znakiem przekształcenia mogą wystąpić (w podanej kolejności):

B1 WEJŚCIE I WYJŚCIE: NAGŁÓWEK <STDIO.H>


O dla przekształceń liczbowych: uzupełnienie liczby wiodącymi rozmiaru pola;

# alternatywna postać wyniku: dla formatu O pierwszą wypisaną cyfrą będzie 0; dla formatu x lub X wynik różny od zera poprzedza się 0x lub 0X; dla formatów e, E, f, g i G wypisana liczba zawsze będzie miała kropkę dziesiętną (dla g i G nieznaczące zera nie zostaną usunięte).

•    Liczba określająca minimalny rozmiar pola. Przekształcony argument zostanie wypisany w polu o rozmiarze nie mniejszym od wskazanego (jeśli to konieczne - o większym). Jeśli przekształcony argument jest krótszy od rozmiaru pola, to zostanie dopełniony z lewej strony (lub z prawej, jeśli zlecono dosunięcie w lewo) do pełnego rozmiaru pola. Znakiem wypełniającym jest zwykle odstęp, chyba że polecono dopełnianie zerami - wówczas jest nim znak 0.

•    Kropka oddzielająca rozmiar pola od precyzji.

•    Liczba (precyzja) określająca: maksymalną liczbę wypisywanych znaków tekstu; liczbę cyfr wypisywanych po kropce dziesiętnej w specyfikacjach e, E lub f; liczbę cyfr znaczących w specyfikacjach g lub G; minimalną liczbę cyfr wypisywanych dla argumentu całkowitego (żądany rozmiar pola osiąga się przez dopisanie wiodących zer).

   Modyfikator długości h, I (litera I) lub L. Litera h wskazuje, że odpowiedni argument jest typu short lub unsigned short; litera I wskazuje, że argument jest typu long lub unsigned long; litera L wskazuje, że argument jest typu long double.

Zamiast liczby określającej rozmiar pola lub precyzję (lub obie) można podać znak *. W tym przypadku żądaną wartość oblicza się na podstawie następnego argumentu (lub następnych argumentów) funkcji. Argument ten musi mieć typ int.

Znaki przekształcenia i ich znaczenie podano w tabl. B-l. Jeśli znak następujący po znaku % nie jest znakiem przekształcenia, to skutek takiej specyfikacji nie jest zdefiniowany.

int printf(const char *format, ...)

Wywołanie printf(...) jest równoważne z wywołaniem fprintf(stdout,...). int sprintf(char *s, const char *format,...)

Funkcja sprintf działa tak samo, jak printf, przy czym wynik (zakończony znakiem ’\0’) jest zapisywany do tablicy s; tablica s musi być dostatecznie duża, żeby pomieścić wynik. Zwracana przez funkcję wartość (liczba wypisanych znaków) nie uwzględnia znaku ’\0\

325

1

Modyfikatory (w dowolnej kolejności), które wpływają na postać wyniku:

- dosunięcie przekształconego argumentu do lewego krańca jego pola;

+ wypisanie liczby zawsze ze znakiem;

odstęp poprzedzenie wyniku znakiem odstępu, jeśli jego pierwszym znakiem nie jest plus lub minus;


Wyszukiwarka

Podobne podstrony:
ANSI C 2 DODATEK B BIBLIOTEKA STANDARDOWA Tablica B-1. Przekształcenia funkcji printf Znak Typ
ANSI C 3 DODATEK B BIBLIOTEKA STANDARDOWA Tablica B-2. Przekształcenia funkcji scanf Znak Dana
ANSI C 0 DODATEK B BIBLIOTEKA STANDARDOWA DODATEK B BIBLIOTEKA STANDARDOWAWejście i wyjście: nagłó
ANSI C 4 DODATEK B BIBLIOTEKA STANDARDOWA czytaniu ze strumienia. Dla każdego strumienia można wyc
ANSI C 5 DODATEK B BIBLIOTEKA STANDARDOWA ____- różną od zera (prawda), jeśli argument c spełnia p
ANSI C 6 DODATEK B BIBLIOTEKA STANDARDOWA s i t są typu void *, argumenty cs i ct są typu const vo
ANSI C 7 DODATEK B BIBLIOTEKA STANDARDOWA double strtod(const char *s, char **endp) Funkcja strtod
ANSI C 8 DODATEK B BIBLIOTEKA STANDARDOWA ________ char *getenv(const char *name) Funkcja getenv z
ANSI C 9 DODATEK B BIBLIOTEKA STANDARDOWA DODATEK B BIBLIOTEKA STANDARDOWASkoki odległe: nagłówek
ANSI C 0 DODATEK B BIBLIOTEKA STANDARDOWA____ clock_t clock(void) Funkcja clock zwraca czas proces
ANSI C 1 DODATEK B BIBLIOTEKA
200DODATEK C. WY BU AS E FUNKCJE BIBLIOTEKI STANDARDOWEJ str tablica znaków, z której mają być odczy
ANSI C 1 DODATEK A PRZEWODNIK JĘZYKA C Implementacje różnią się reakcjami na dzielenie przez zero
ANSI C 1 DODATEK A PRZEWODNIK JĘZYKA C union { struct { int type; ł n; struct { int type
ANSI C 5 DODATEK A PRZEWODNIK JĘZYKA C Struktury i tablice są obiektami złożonymi. Jeśli obiekt zł
ANSI C 1 DODATEK A PRZEWODNIK JĘZYKA _______ 6 Te zasady różnią się pod kilkoma względami od zasad
84. KORELACJA HYDRAULICZNA DLA WYPEŁNIEŃ STANDARDOWYCH 463 TABLICA XIII-6 Wartości stale ks, ke, k?
ANSI C 1 5 WSKAŹNIKI I TABLICE Stałe napisowe chyba najczęściej występują jako argumenty funkcji,

więcej podobnych podstron