Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #99128

Re: Winding and unwinding

From BartC <bc@freeuk.com>
Newsgroups comp.lang.c
Subject Re: Winding and unwinding
Date 2016-12-12 20:48 +0000
Organization A noiseless patient Spider
Message-ID <o2n2ck$9dk$1@dont-email.me> (permalink)
References <a844feca-3b28-4d3b-8a19-6a29d08ed8e2@googlegroups.com>

Show all headers | View raw


On 12/12/2016 19:46, Rick C. Hodgin wrote:
> This is a message primarily for input from Supercat and Bart, but I
> post it publicly to give everyone an opportunity for input.
>
> Suppose I have a process which must operate on these two files which
> are known to be less than a few hundred KB each, on a machine which
> has Gigabytes of memory:
>
>     1)  Open file1 and file2
>     2)  Get both file's sizes
>     3)  Note if file1 and file2 sizes are equal

Then what, continue only if they're both the same, or bail out at this 
point?

>     4)  Read both file's contents into memory
>     5)  Compare content byte-by-byte, see if they contain any binary
>         characters (non-A_Z,a_z,0_9, plus standard symbols, CR, LF,
>         and a few others), and if they're exactly equal/identical
>     6)  Return the results

Is this a real task or just a set-up to demonstrate the new UnWind 
feature? Because I found that hard to follow.

If writing this in a dynamic language, I might just read both files into 
memory anyway:

   f = readfile("one")    # say each is a string descriptor
   g = readfile("two")

   if f.error or g.error: # or f/g are null on error
     freestring(f)        # trust it not to free if not allocated
     freestring(g)

Otherwise, at this point you now have effectively two strings that you 
do what you like with without still worrying about file errors.

If this is for a new language, I'd advise you to look at exceptions 
(/but keep it simple/), and automatic freeing of selected variables as 
they pass out of scope. But again, without it getting so out of hand 
that you end up with a poor C++ imitation.

-- 
Bartc

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 11:46 -0800
  Re: Winding and unwinding Anton Shepelev <anton.txt@gmail.com> - 2016-12-12 23:15 +0300
    Re: Winding and unwinding Anton Shepelev <anton.txt@gmail.com> - 2016-12-12 23:21 +0300
    Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 13:29 -0800
      Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 14:07 -0800
        Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-15 08:54 -0800
          Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-15 09:04 -0800
            Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-15 09:15 -0800
  Re: Winding and unwinding supercat@casperkitty.com - 2016-12-12 12:21 -0800
  Re: Winding and unwinding BartC <bc@freeuk.com> - 2016-12-12 20:48 +0000
    Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 13:28 -0800
  Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 13:14 -0800
    Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 14:26 -0800
      Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 16:13 -0800
        Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 16:33 -0800
          Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 16:48 -0800
            Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 17:05 -0800
              Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 17:22 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 17:33 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-12 17:55 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 03:11 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-13 03:39 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 03:59 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 04:57 -0800
                Re: Winding and unwinding BartC <bc@freeuk.com> - 2016-12-13 13:24 +0000
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 05:34 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 05:34 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-13 06:01 -0800
                Re: Winding and unwinding Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-12-13 15:10 +0000
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-13 05:30 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 05:45 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 05:58 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-13 06:04 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 10:24 -0800
                Re: Winding and unwinding Chad <cdalten@gmail.com> - 2016-12-13 21:44 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-14 02:13 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-14 11:45 -0800
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-14 12:09 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-14 12:50 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-17 05:28 -0800
                Re: Winding and unwinding BartC <bc@freeuk.com> - 2016-12-13 14:54 +0000
                Re: Winding and unwinding "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-12-13 07:03 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 07:09 -0800
                Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-13 05:27 -0800
      Re: Winding and unwinding fir <profesor.fir@gmail.com> - 2016-12-12 17:13 -0800
  Re: Winding and unwinding Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-12-12 16:28 -0800

csiph-web