Praca ze suborama – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Praca ze suborama – C / C++ – Fórum – Programujte.comPraca ze suborama – C / C++ – Fórum – Programujte.com

 

Vlákno bylo úspěšně vloženo.
Pokud sám přijdeš na řešení, nezapomeň ho sem přidat!
Farbis_kralis
~ Anonymní uživatel
2 příspěvky
30. 4. 2014   #1
-
0
-

Zdarte, mám řešit zadání, kde z jednoho souboru vytahnu retezec, seradim ho a pote zase ulozim. Myslite, ze zdrojak co sem nasel je pouzitelny? resp. nema nekdo neco funkcniho. diik

 main:

# include <stdio.h>
#include<stdlib.h>
# include "lbr_file.h"

int main()
{
	FILE *zdroj, *cil;
	{
		
		

open_file_read(zdroj);
open_file_write(cil);

	
		int i, j = 0;


		while (i = getc(zdroj), feof(zdroj) == 0)
		{
			j = j + 1;
			putc(i, cil);
		}
		
		return(0);
	}

close_file(zdroj); 
close_file(cil);



	return 0;
}

.c

#include <stdio.h>
#include<stdlib.h>
#include "lbr_file.h"

FILE *open_file_read(FILE *soubor){
	// Nastavuj ukazatele na NULL nebo nulu hned při jejich deklaraci
//	FILE *soubor = 0;
	 soubor = fopen("zdroj.txt", "r");

	if (!soubor){
		printf("Nepodařilo se otevřít soubor \n");
		return 0;
	}

	// Vrátíme odkaz na nově otevřený soubor
	return soubor;
}

FILE *open_file_write(FILE *subor){
	// Nastavuj ukazatele na NULL nebo nulu hned při jejich deklaraci
	//FILE *subor = 0;
	 subor = fopen("cil.txt", "w");

	if (!subor){
		printf("Nepodařilo se otevřít soubor \n");
		return NULL;
	}

	// Vrátíme odkaz na nově otevřený soubor
	return subor;
}


int close_file(FILE *sobor){
	// změníme parametr funkce fclose
	if (fclose(sobor) == 0)
		return 1;
	else
		return 0;
	//fclose(sobor) == 0 ? return 1 : return 0;
}

.h

#ifndef __lbr_file_H__
#define __lbr_file_H__

FILE *open_file_read(FILE *soubor);
FILE *open_file_write(FILE *subor);
int close_file(FILE *sobor);



#endif
Nahlásit jako SPAM
IP: 2001:67c:1220:c1b1:ec8b:c...–
30. 4. 2014   #2
-
0
-

Bylo by vhodnější zadávat "full path" souboru. Tak je dán nejen název souboru ale i adresář, kde ho bude hledat/vytvářet. Nejlepší by byla možnost zadat název zdrojového a cílového souboru např. jako parametry aplikace.

Jinak k funkčnosti: asi používáš nějaké vývojové prostředí. To obsahuje debugger. Co to v něm odkrokovat a podívat se, co to dělá?

hu

Nahlásit jako SPAM
IP: 195.178.67.–
Farbis_kralis
~ Anonymní uživatel
2 příspěvky
30. 4. 2014   #3
-
0
-

#2 hlucheucho

ja som si to skúšal krokovať ale hneď v prvom kroku mi to píše že používam nedeklarovanú premennú soubor ktorá je zadeklarovaná o riadok vyžšie ..
Preto by to chcelo niekho kto to hodí do debuggeru a povie mi čo tam mám zle :/

Nahlásit jako SPAM
IP: 2001:67c:1220:c1b1:ec8b:c...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 12 hostů

Podobná vlákna

Praca webmaster — založil maros cerven

Praca so subormi — založil Tom@sQo

Práca z DLL v C++ — založil Warlock51

Práca so súbormi — založil Milan

Moderátoři diskuze

 

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