Newsgroup: it.comp.lang.c
Titolo: grandezza file

Ciao,
quali modi esistono per sapere la grandezza (in byte) di una file? E'
necessario scorrere per forza tutto il suo contenuto fino a EOF e contare i
caratteri? C'è qualcosa di + veloce?
Grazie
Fabrizio


#include<stdio.h>
int FileLen(char *nome)
{
   FILE *f;
   int L;
   f=fopen(nome,"rb");
   if (!f) return 0;
   fseek(f,0,SEEK_END);
   L=ftell(f);
   fclose(f);
   return L;
}
dovrebbe funzionare, almeno per files di lunghezza non mostruosa.
ciao,
g.

Salve ragazzi!!!!
Scusate se vi disturbo ma avrei bisogno d'aiuto!!!!
Sono alle prime armi con il C, ma pratticamente devo obbligatoriamente
impararlo in meno di 6 giorni per una verifica per poter sostenere un'esame
a maggio!!!!!.
Quindi avro tempo e modo di capire tutto il C!!!
 ma per adesso mi serve un'aiuto a capire degli esercizi che mi hanno dato
per poter passare almeno la verifica!!!
la verifica consiste nel scivere dei pèrogrammi in c sotto unix col file
pico e il compilatore cc di unix.
Se qualcuno è cosi gentile di venirmi incontro mi manderò in allegato nel
caso mi contattate l'esercizi che mi hanno dato!!!! per poter superare la
verfica
p.s. Non si tratta di essere pigro ho tutta la voglia di imparare, ma non mi
basta il tempo!!!!
grazie saluti



Salve ragazzi,
vi chiedo una gentilezza, sono alle prime armi con C e mi sono imbattuto su
questo esercizio che devo portare come verifica!!!!
Scrivere incolonnati i numeri da 1 a 15, il loro quadrato e  la radice
quadrata.
il codice per me è questo
main()
      {
       printf("Numero\t      Quadrato\t     Radicequadrata\n");
       printf("1\t                      1\t                        1\t);
ecc fino al 15esimo numero.
Il problema è che non riesco a capire se esiste un'altro metodo che possa
darmi lo stesso risultato......
dovrebbe venire una cosa del genere
Numero      Quadrato    Radicequadrata
  1                    1                 1
   2                    4                 2
    3                   9                  3
ecc ecc
potreste aiutarmi
Grazie


si c'è un altro metodo e consiste nell' utilizzare la libreria standard
math.h.
per il quadrato c'è la funzione pow(x,y)
per la radice c'è sqtr(n) se non sbaglio ma non ne sono sicuro...
se cerchi math.h a google trovi sicuramente cio che cerchi...
ps:
non credo che bisogna fare la radice quadrata del Quadrato ma del Numero
ovvero la radice quadrata di 1,2,3 ecc.. non di 1,4,9...
Numero      Quadrato    Radicequadrata
  1                    1                 1
   2                    4                 2
    3                   9                  3
ciao

Sareti cosi gentile da portarmi verso la buona strada, il fatto e che non sò
come immettere il valore pow(x,y) e sqrt, non ho mai fatto una cosa del
genere

 dovrebbe funzionare, almeno per files di lunghezza non mostruosa.
Notare che ftell, e quindi questa funzione, ritornano -1 nel caso non 
sia possibile ottenere la posizione nel file.

 per la radice c'è sqtr(n) se non sbaglio ma non ne sono sicuro...
Per la precisione la funzione e` sqrt().


 legittima per un file.
Beh' dipende dall'uso che si deve fare della funzione.
(comunque anche io faccio la stessa cosa :-)
qui volevo solo fare un esempio di come si possa ottenere la lunghezza.
ciao,
g.

 basta il tempo!!!!
Buon per te. Il lavoro degli altri si paga (soprattutto quando si tratta
di fregare il prossimo...) [1].
C:\>iao Angelo
[1] Prossimo che, per tua informazione, e' piuttosto abituato a questi
    tentativi e sgama subito se il compitino e' stato fatto da te o da
    qualcun'altro.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 a maggio!!!!!.
=8-O
Marcello
---
--
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.587 / Virus Database: 371 - Release Date: 12/02/2004


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.590 / Virus Database: 373 - Release Date: 16/02/2004