[ LUGOS ] RH 5.0 in buggy buggy libi

Metod Kozelj metod.kozelj na rzs-hm.si
Sob Apr 11 09:32:06 CEST 1998


Howdy!

On Fri, 10 Apr 1998, Ales Horvat wrote:

> >   fprintf ( stderr, "A tole zdej dela al ne?!?!\n" );
> > 
> > PS: fprintf() se je usuval zato, ker je program nakje dalec prej iz zelo
> > trapastega in tezko najdljivega razloga povozil zakljucni \0 v staticnem
> > stringu od fprintf()-a. Ta je potem dumpal core, ker ni in ni prisel
> 
> Sicer ne razumem tvojega problema... (saj nisi izpisoval staticne
> spremenljivke;)

Kako pa ti reces stringu, ki je zapisan kakor v zgornjem primeru? Saj je
isto, kot ce bi rekel

const char[] staticni_string="A tole zdej dela al ne?!?!";
fprintf (stderr, "%s\n", staticni_string);

ali pak? No ja, res ni v pravem pomenu besede staticni, pac pa konstantni.

> Zadnji del moje kode (zaradi debuginga) izgleda:
> printf("Odpiram: '%s'\n", fname);
> fle=fopen(fname, "a");
> printf("Datoteka odprta\n");

Ali si prerpican, da ne naletis na omejitev najvecjega dovoljenega stevila
odprtih datotek? Meni se je to ze zgodilo. Ampak se ne spomnim, kaj mi je
takrat rekel. Morda tudi nic, ker navadno namesto straight fopen() raje
napisem nekaj takega:

if ((fle=fopen(fname, "a"))==NULL) {
    fprintf (stderr, "Datoteke %s ni bilo mogoce odpreti!\n", fname);
    exit (1);
}

> In; verjemi, ne pride do zadnje vrstice ;)

Niti enkrat?

Peace!
  Mkx




Dodatne informacije o seznamu Starilist