![]() |
Mòdul
8
![]() |
Fonaments de
Programació. Llenguatge C/C++![]() |
Pràctica ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
Pràctica
d'ampliació ![]() ![]() |
Trobar la mida i la data d'un arxiu
En aquesta pràctica aprendrem un ús interessant de les funcions fseek() i ftell() a més de com es pot obtenir de forma ràpida dades de l'arxiu: data, mida...
|
|||
![]() |
Desenvolupament de la pràctica
En primer lloc implementarem una funció mida() que ens donarà la mida en octets d'un arxiu de disc. Això es farà amb ajuda de les funcions fseek() i ftell(). Creeu un nou arxiu del tipus C++ anomenat m8p05.cc i escriviu el següent codi:
Explicació del programa La funció main() d'aquest programa rep un argument a través de la línia de comandament. No es fa cap comprovació del nombre d'arguments per tal de facilitar la lectura del codi, no obstant, seria interessant fer-la. Aquest argument serà el nom de l'arxiu, la mida del qual volem saber. La mida es troba a partir de la funció mida(). Aquesta funció té com únic argument el nom de l'arxiu. Aquesta funció s'encarrega d'obrir-lo. A continuació, amb:
fa que el punter de posició de lectura de l'arxiu apunti a la darrera posició (0 posicions començant per l'última). Aleshores, la funció ftell() torna la posició d'aquest punter començant pel principi, és a dir, torna la mida de l'arxiu. |