hoď ma hore
Milí diskutujúci. Pri diskutovaní prosím: 1. nepridávaj jednoslovné témy / 2. nepridávaj uražlivé alebo vulgárne komentáre. Ak tieto pravidlá nedodržíš, tvoja téma pravdepodobne skončí v koši. Príjemné diskutovanie :)
Nepoužívajte Avast
príspevkov 20 |
zobrazení 53 |
tému vytvoril(a) 17.5.2026 23:07 Fotón
posledná zmena 18.5.2026 04:18
|
12
|
Kód zobrazenia:
#include <stdio.h> #include <stdlib.h>
// Definujeme makra pre podporu velkych suborov #define fseeko fseeko64 #define ftello ftello64
int main() { // Pouzijeme "rb" pre binarne citanie FILE *f = fopen("tmp.bin", "rb"); if (!f) { printf("Chyba: Subor 'tmp.bin' nebol najdeny!\n"); system("pause"); return 1; }
// Zistíme veľkosť súboru pomocou 64-bitovej verzie ftello fseeko(f, 0, SEEK_END); long long velkost = ftello(f); long long pocet_prvocisiel = velkost / 8; // sizeof(long long) je 8 rewind(f);
printf("--- OPRAVENY BINARNY PREHLIADAC (64-bit) ---\n"); printf("V subore je celkovo: %lld prvocisiel.\n", pocet_prvocisiel); printf("Velkost suboru: %.2f GB\n", (double)velkost / (1024.0 * 1024.0 * 1024.0));
while (1) { long long index; int rozsah;
printf("\nZadaj poradove cislo (1 - %lld), 0 pre koniec: ", pocet_prvocisiel); if (scanf("%lld", &index) != 1 || index <= 0) break; printf("Kolko prvocisiel chces vypisat? "); scanf("%d", &rozsah);
if (index > pocet_prvocisiel) { printf("Chyba: Tolko prvocisiel tam nie je!\n"); continue; }
// Skočíme na pozíciu pomocou 64-bitového fseeko fseeko(f, (index - 1) * 8, SEEK_SET);
printf("\n--- VYPIS ---\n"); for (int i = 0; i < rozsah; i++) { long long prvocislo; if (fread(&prvocislo, 8, 1, f) == 1) { printf("%lld. prvocislo: %lld\n", index + i, prvocislo); } else { break; } } printf("-------------\n"); }
fclose(f); printf("\nProgram ukonceny.\n"); system("pause"); return 0; }
|
 |
|
|
prevádzkuje diskusneforum.sk
kontaktuj správcu diskusného fóra
vytvoril dzI/O 2023 - 2026
verzia : 1.05 ( 27.4.2024 1:45 )
veľkosť : 42 240 B
vygenerované za : 0.037 s
unikátne zobrazenia tém : 2 031 259
unikátne zobrazenia blogov : 20 325
táto stránka musí používať koláčiky, aby mohla fungovať...