Re: Goto still considered ful
CBFalconer wrote:
[...]
> You don't need all that confusing local declaration of variables,
> etc. Consider:
>
> int fcopy(char const *dst, char const *src) {
> FILE *sf, *df;
> int ch
>
> if (sf = fopen(src, "r") { /* text files */
> if (df = fopen(dst, "w") {
> while (EOF != (ch = getc(sf))) putc(ch, df);
> fclose(df);
> }
> fclose(sf);
> }
> return sf && df; /* non-zero for success */
> }
>
> which I consider more readable and safer than your version. :-)
This is good-weather code, and has nothing to do with "safe" code in
production.
Just on my first read, I think you need to consider:
- fopen failure
- getc failure
- putc failure
far more carefully.
--
Tor <torust [at] online [dot] no>
"I have stopped reading Stephen King novels. Now I just read C code instead"
|