Warning: Undefined array key "userinfo" in /home/pp/.public_html/lib/plugins/indexmenu/action.php on line 54
Operacje wejścia/wyjścia [Podstawy Programowania]
Warning: Undefined array key "stylesheets" in /home/pp/.public_html/inc/StyleUtils.php on line 102


Podstawy Programowania

Instytut Informatyki Stosowanej, Politechnika Łódzka

Narzędzia użytkownika

Narzędzia witryny


Operacje wejścia/wyjścia

Operacje wejścia i wyjścia jest to odpowiednio odczyt oraz zapis danych na różnych zewnętrznych urządzeniach lub nośnikach pamięciowych komputera (np klawiatura, monitor, plik, drukarka).

Operacje te nie są elementami języka C, realizowane są one jako funkcje znajdujące się w bibliotekach. Pozwalają one na wykonywanie operacji wejścia-wyjścia w różny sposób i na różnym poziomie.

Podstawowymi operacjami jakie będą omawiane jest prosta komunikacja z użytkownikiem, czyli wyświetlanie na ekranie oraz odczyt z klawiatury. Służą do tego odpowiednio funkcje printf oraz scanf z biblioteki stdio.h.

Przykład:

printf("Podaj wartość zmiennej\n");
scanf("%d", &zmienna);
printf("Zmienna podana przez użytkownika ma wartość: %d\n", zmienna);

Specyfikatory konwersji

Funkcja printf przyjmując liczbę musi wiedzieć w jaki sposób ją wyświetlić:

Specyfikator konwersji Typ danych
%d, %i int
%c char
%f float
%f, %lf double
%lilong int
%llilong long int
%stablica znaków

Ciąg znaków może zawierać też dodatkowe informacje:

%-8.3f
% - 8 .3 f
flagi minimalna
długość
pola
precyzja specyfikatory
konwersji
  • Flagi - minus oznacza wyrównanie do lewej, plus wymusza wyświetlenie znaku liczby.
  • Minimalna długość pola - jeżeli liczba będzie miała mniej cyfr niż podano, dodatkowe miejsce zostanie zapełnione spacjami.
  • Precyzja - przy liczbach zmiennoprzecinkowych, określa liczbę cyfr po przecinku. W innym przypadku, dodane są zera na początku liczby.

Bardziej szczegółowe informacje można znaleźć na stronie: https://en.wikipedia.org/wiki/C_data_types#Basic_types.

Przykład

int a = 21738;
float b = 47.062523411;
char *c = "Kot";
printf("%6s\n",c);
printf("%-+12d\n",a);
printf("%.9d\n",a);
printf("%7.3f\n",b);

Wyjście:

   Kot
+21738
000021738
 47.063
pp/pp1/teoria/wewy.txt · ostatnio zmienione: 28/10/2017 17:03 przez Administrator