66
ROZDZIAŁ JO. PODSTAWOWE PROCEDURY WEJŚCIA I WYJŚCIA
W przykładzie “Hello World!" użyliśmy już jednej z dostępnych funkcji wyjścia, a mianowicie funkcji printf(). Z punktu widzenia swoich możliwości jest to jedna z hardziej skomplikowanych funkcji, a jednocześnie jest jedną z najczęściej używanych. Przyjrzyjmy się ponownie kodowi programu "Hello. World!”.
#include <stdio.h>
int main(void)
i
printf("Hello world!\n“); return 0;
>
Po skompilowaniu i uruchomieniu, program wypisze na ekranie:
Hello vorld!
W naszym przykładowym programie, chcąc by funkcja printf O wypisała tekst na ekranie, umieściliśmy go w cudzysłowach wewnątrz nawiasów. Ogólnie, wywołanie funkcji printf () wygląda następująco:
printf(format, argument1, argument2, ...);
Przykładowo:
int i ■ 500;
printf ("Liczbami całkowitymi są na przykład */,i oraz %i.\n", 1, i);
wypisze
Liczbami całkowitymi są na przykład 1 oraz 500.
Format to napis ujęty w cudzysłowy, który określa ogólny kształt, schemat tego. co ma być wyświetlone. Format jest drukowany tak. jak go napiszemy, jednak niektóre znaki specjalne zostaną w nim podmienione na co innego. Przykładowo, znak specjalny \n jest zamieniany na znak nowej linii 2. Natomiast procent jest podmieniany na jeden z argumentów. Po procencie następuje specyfikacja, jak wyświetlić dany argument. W tym przykładzie 7,i (od int) oznacza, że argument ma być wyświetlony jak liczba całkowita. W związku z tym, że \ i X mają specjalne znaczenie, aby wydrukować je, należy użyć ich podwójnie:
printf ("Procent: 7,7, Backslash: W");
drukuje:
Procent: 7. Backslash: \
3Zmiana ta następuje w momencie kompilacji programu i dotyczy wszystkich literałów napisowych. Nie jest to jakaś szczególna własność funkcji printf(). Więcej o tego typu sekwencjiu-h i cugach znaków w szczególności opisane jest w rozdziale Napisy.