Trimis: Lun Dec 14, 2009 6:24 pm Titlul subiectului: Proiect fisiere C++
Am de facut urmatorul proiect, dar nu prea stiu cum sa incep si as avea nevoie de niste sfaturi.
Sa se realizeze în limbajul C un program multifunctional pentru gestiunea fisierelor. Fisierul principal de date trebuie sa fie organizat relativ sau indexat. Programul trebuie sa asigure toate operatiile de gestiune necesare, în functie tema concreta aleasa. Operatiile minim necesare sînt urmatoarele:
- Crearea si popularea fisierului principal de date
- Adaugarea de date noi în fisier, în diverse moduri de acces
- Toate datele preluate de la tastatura trebuie sa fie validate
- Consultarea datelor din fisier, în diverse moduri de acces
o Cu afisarea datelor regasite pe ecran
o Cu scrierea de rapoarte în fisiere text
- Modificarea datelor din fisier, în functie de nevoile concrete ale temei alese
- Realizarea unui raport cu minim 2 grade de total, în fisier text
Trimis: Lun Dec 14, 2009 7:10 pm Titlul subiectului:
Nu e vb de asta, dintotdeauna m-a pasionat programarea si chiar ma descurc, dar partea asta de fisiere nu e punctul meu forte. Am nevoie doar de niste sfaturi pentru a intelege mai bine cerinta
Trimis: Lun Dec 14, 2009 7:23 pm Titlul subiectului:
Uite o serie de functii in lucrul cu fisierele pe care sa le studiezi. Exemplul de mai jos e tot de acolo si mai sunt multe astfel de exemple. Dupa ce intelegi cum se lucreaza cu fisierele (eventual ne mai intrebi unde nu intelegi) vei trece la rezolvarea problemei tale.
// crt_fread.c
// This program opens a file named FREAD.OUT and
// writes 25 characters to the file. It then tries to open
// FREAD.OUT and read in 25 characters. If the attempt succeeds,
// the program displays the number of actual items read.
#include <stdio.h>
int main( void )
{
FILE *stream;
char list[30];
int i, numread, numwritten;
// Open file in text mode:
if( fopen_s( &stream, "fread.out", "w+t" ) == 0 )
{
for ( i = 0; i < 25; i++ )
list[i] = (char)('z' - i);
// Write 25 characters to stream
numwritten = fwrite( list, sizeof( char ), 25, stream );
printf( "Wrote %d items\n", numwritten );
fclose( stream );
}
else
printf( "Problem opening the file\n" );
if( fopen_s( &stream, "fread.out", "r+t" ) == 0 )
{
// Attempt to read in 25 characters
numread = fread( list, sizeof( char ), 25, stream );
printf( "Number of items read = %d\n", numread );
printf( "Contents of buffer = %.25s\n", list );
fclose( stream );
}
else
printf( "File could not be opened\n" );
}
Trimis: Lun Dec 14, 2009 11:27 pm Titlul subiectului:
Observ o tendinta de a baga incepatorii in ceata cu functii idioate si neportabile gen fopen_s(), sau flag-uri asisderea gen "t", care foarte probabil nu vor functiona in compilatorul/biblioteca cu care se straduiesc numitii incepatori - in cele mai multe cazuri, un dinozaur gen BC 3.1 - sau daca vor functiona, vor face lucruri miraculoase dar neplacute. Acum nu zic sa vorbim despre iostream.h sau getch(), dar nu-i kosher nici sa aducem in discutie gunoaie cu sufixul _s. MSDN e cam ultimul loc unde ar trebui sa fie trimis cineva pentru informatii despre biblioteca standard de C.
In legatura cu subiectul propriu-zis nu prea am nimic de zis. _________________ Breviar de personalitati
Trimis: Mar Dec 15, 2009 11:31 am Titlul subiectului:
thenuts15 a scris:
Nu e vb de asta, dintotdeauna m-a pasionat programarea si chiar ma descurc, dar partea asta de fisiere nu e punctul meu forte. Am nevoie doar de niste sfaturi pentru a intelege mai bine cerinta
1. Cerinta trebuie sa ti-o explice cel care ti-a dat-o. E o chestie foarte importanta in programare, nu accepta sa faci ceva pana cand ori ai inteles exact despre ce e vorba, ori stii ca poti oricand sa revii cu intrebari.
2. "Partea asta de fisere" o sa o gasesti in aproape orice program non-didactic cu care vei lucra vreodata. Trebuie sa faci un efort s-o intelegi bine.
Nu puteți crea un subiect nou în acest forum Nu puteți răspunde în subiectele acestui forum Nu puteți modifica mesajele proprii din acest forum Nu puteți șterge mesajele proprii din acest forum Nu puteți vota în chestionarele din acest forum