On Wed, Apr 21, 2010 at 08:16:48PM -0700, Brian Lavender wrote: > On Wed, Apr 21, 2010 at 07:20:26PM -0700, Matthew Van Gundy wrote: > > On 4/21/10 3:26 PM, Jeff Newmiller wrote: > > >> There are many ways to skin a cat, here's one: > > >> > > >> void reverse(int forward[], int backward[], unsigned int n) { > > >> unsigned i = n; > > >> while(i--> 0) { > > >> backward[n-i-1] = forward[i]; > > >> } > > >> } > > > > > > This reverses and then re-reverses it. > > > > Nope, just reverses it once. I'll admit, it isn't an idiomatic > > construction, but it uses an unsigned index that counts down to reverse > > an array since that's what Brian seemed to be after. > > I just want the equivalent to a reverse iterator. I think using a signed > index value is the way to go. Then, put an invariant condition on the > index, so that it is never negative for accessing an element in the array. > > For my program, I am using Gnome's glib's GPtrArray which doens't have an > iterator feature. I didn't expect that it would. I just used a regular > array for my posts not to confuse the problem. > > for ( i = NUM_ELEMENTS -1 ; i > 0; i--) > // access each element
That of course won't get all the elements. I actually meant to say. for ( i = NUM_ELEMENTS ; i > 0; i--) // access each element Ugh. -- Brian Lavender http://www.brie.com/brian/ "For every complex problem there is an answer that is clear, simple, and wrong." - H. L. Mencken _______________________________________________ vox-tech mailing list vox-tech@lists.lugod.org http://lists.lugod.org/mailman/listinfo/vox-tech