fread() - jak korzystać ?

0

Jestem bardzo początkujący stąd to pytanie :)
Jak skorzystać z funkcji fread() aby ze standardowego wejścia ( konsola ) pobrać liczbę i zapisać ją w int'cie ?

0

fread() to jest skrót od file read, do konsoli chyba się nazywa getc(), ale nie jestem pewiem
ja zawsze <ort>korzystam</ort> z

  int a;
  cin >> a;
0

fread sluzy do czytania z pliku,
mozesz uzyc:

int liczba;

cin > liczba;

albo

scanf("%i",&liczba);

0

Czytałem że ludziska używają tej metody do czytania danych z konsoli i jest to szybsze od scanf a tym bardziej od cin.

0

Czytałem że ludziska używają tej metody do czytania danych z konsoli i jest to szybsze od scanf a tym bardziej od cin.

I dobrze słyszałeś, ale nie do odczytu formatowanych danych. Standardowe wejscie to plik stdin. Jeżeli więc chcesz odczytać np. 1 daną o rozmiarze int z konsoli to piszesz:

if (fread(&gdzie_chcesz_odczytac, sizeof(int), 1, stdin) < 1)
  printf("Ups... blad");

Jeżeli natomiast liczba jest podana w postaci czytelnej dla człowieka (np. 123.45) to należy skorzystać z scanf lub fscanf

if(scanf("%d", &gdzie_chcesz_odczytac) < 1)
  printf("Houston, we have a problem here");
if(fscanf(stdin, "%d", &gdzie_chcesz_odczytac) < 1)
  printf("Nico nie odczytalismy... to nie jest dobrze...");

1 użytkowników online, w tym zalogowanych: 0, gości: 1