Anonymní profil Tomáš – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Tomáš – Programujte.comAnonymní profil Tomáš – Programujte.com

 

Příspěvky odeslané z IP adresy 95.102.205.–

C / C++ › pole reťazcov
7. 11. 2014   #195742

  #10 vitamin

 vdaka , toto je moja finalna verzia :) 

void proc()
{
	int i=0;
	
	FILE *subor;
	if ((subor = fopen("subor.txt", "r")) == NULL) {
		printf("neni otvoreny");	
		return;
	}
	char udaje[30][52];
		
	while ((fgets(udaje[i], 52, subor)) != NULL){
		i++;
	
	}
	for (i = 0; i < 30; i++){
		printf("%s", udaje[i]);
		
	}
	putchar('\n');
	
	fclose(subor);
}
C / C++ › pole reťazcov
7. 11. 2014   #195740

uz som si spravil ucet, Tomáš=vrtkoo now :)

#8 vitamin
dík, funguje to. Kedže hovoris ze zbytocne alokacie? a ako by som to spravil bez nich? lebo bez nich mi to(povodna moja procedura) už vobec nefunguje, ani vypis.. (ale toto riešenie sa mi zide do dalšich procedur :) )

Tomáš
C / C++ › pole reťazcov
7. 11. 2014   #195731

sorry ze som nevyuzil  

tuto moznost

p.s. nevedomosť

 

Tomáš
C / C++ › pole reťazcov
7. 11. 2014   #195729

FILE *f; predaj = fopen("subor.txt", "r"); /// f je neinicializvane
tam nemam chybu, to som komentoval ze len preklep, 
char *[30] nepomaha. to je to iste len inak napisane :)

toto robim projekt z viac procedur, vlastne ešte nemam vyriešiene to ze v jednej procedure si otvorim ten subor a budem si ho posuvat otvoreny, a az potom v maine ho zatvorim. (preto mi tu chyba to zatvorenie) a subor mi to otvara to viem lebo ked dam kontrolny vypis na vypisanie obsahu toho pola, udaje vypise a potom hned error. a len pri citani zo suboru sa myslim nemaju ako stratit udaje v tom subore, takze to nie je az taka chyba ked to windows za mna zatvori.

a problem pretrvava, aj ked som vyskušal všetky vaše hinty :(

Tomáš
C / C++ › pole reťazcov
7. 11. 2014   #195724

predaj = fopen("subor.txt", "r");, tam je samozrejme f miesto predaj.. to len drobna chybicka pri kopirovani

Tomáš
C / C++ › pole reťazcov
7. 11. 2014   #195723

void proc()
{

int i=0;
    char str[52];
    FILE *f;
    predaj = fopen("subor.txt", "r");
    char **udaje;
    if ((udaje = malloc(30 * sizeof(char *))) == NULL){
        printf("pamät fail");
        exit(1);
    }

        
    while ((fgets(str, 52, f)) != NULL){
        if ((udaje[i] = (char *)malloc(52)) == NULL){
            printf("pamät fail 2");
            exit(1);
        }               
        strcpy(udaje[i], str);
        i++;
    }

    for (i = 0; i < 30; i++) 
        free(udaje[i]);
    free(udaje);

}

po zavolaní tejto procedury mi to hadze error

Unhandled exception at 0x6B19FB53 (msvcr120d.dll) in PRPR PROJEKT 1.exe: 0xC0000005: Access violation reading location 0xCDCDCDCD.

prosím vás je tam niekde chyba? dakujem.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý