Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF – vaše škola fotografie

 

Kdo lektoruje pražský letní workshop v ZOO a Botanické zahradě?

V dnešní soutěži hrajeme o:

Dárkový certifikát v hodnotě 1000 Kč



Funkce má vracet hodnotu parametrem

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

 

Vložit nový příspěvek

Jméno:

Předmět:

Příspěvek:

*AGGRESSIVE* O:-) :-/ :-P *BLUSH* *BYE* :'( *DASH* 8-) *DRINK* :-| *THUMBUP* *SOS* *KISSED* :-* *OK* *SECRET* *STOP*

Pohlaví:

Muž, Žena

Kontrola:

Do spodního pole opište z obrázku 5 znaků:

Kód pro ověření

 

 

 

Re: Funkce má vracet hodnotu parametrem

Autor: Jaroslav Šmíd

20:43:53 20.11.2011

Jenom si dovolím připomínku, 'i' by bylo lepší mít typu long, ať je to stejné jako návratová hodnota, a přidat kontrolu přetečení, protože přetečení čísla se znaménkem je špatná věc a mohou se dít různé divy, pokud váš soubor přesáhne velikost LONG_MAX :D

Citovat příspěvek

 

Re: Funkce má vracet hodnotu parametrem

Autor: roman.hocke

12:35:25 15.11.2011

Jo a volání pak samozřejmě:
[code]
i = cti_znak(fr, &p_c);
[/code]

Citovat příspěvek

 

Re: Funkce má vracet hodnotu parametrem

Autor: roman.hocke

12:34:15 15.11.2011

Ahoj:
[code]
long cti_znak(FILE *fr, int *p_c)
{
static int i = 1;

(*p_c) = getc(fr);
return(i++);
}
[/code]

Citovat příspěvek

 

Funkce má vracet hodnotu parametrem

Autor: VojtaP

11:39:38 15.11.2011

Ahoj, mám problém s jedním příkladem od pana Herouta.
Zadání je:

Napište funkci long cti_znak(FILE *fr, int *p_c), která přečte jeden znak ze souboru a vrátí ho pomocí druhého parametru. Návratovou hodnotou funkce bude počet volání této funkce (využití lokální static proměnné). Hlavní program vypíše pomocí této funkce soubor a nakonec i počet přečtených znáků.

Napsal jsem program, který splňuje funkci program ze zadání, ale nevrací hodnotu parametrem. Nenapadá mě, jak to udělat. Má někdo nějaký nápad? V řešených cvičeních od p. Herouta tento příklad zrovna chybí.

Moje řešení

#include

int p_c;

int main(void)
{
FILE *fr;
int i;
long cti_znak(FILE *fr);

fr = fopen("TEXT.TXT","r");

do {
i = cti_znak(fr);
putchar(p_c);
} while(p_c != EOF);

printf("\n\nSoubor obsahoval %d znaku.", i);
printf("\n\n");
system("PAUSE");
}

long cti_znak(FILE *fr)
{
static int i = 1;

p_c = getc(fr);
return(i++);
}

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: