NSUInteger in for-loop?
NSUInteger in for-loop?
- Subject: NSUInteger in for-loop?
- From: Alex Reynolds <email@hidden>
- Date: Sun, 14 Sep 2008 21:15:53 -0700
I'm wondering if I'm using unsigned integers (specifically NSUInteger)
properly or not.
I was under the impression that unsigned integers run from 0 to
MAX_INT, but when I use them in a "for" loop within these bounds, the
loop does not seem to always obey these constraints.
For example:
for (NSUInteger counter = 5; counter >= 0; --counter)
{
NSLog(@"NSUInteger: %d", counter);
}
keeps running well after the "counter" variable turns negative:
2008-09-14 21:03:12.056 NSUIntTest[19579:10b] NSUInteger: 5
2008-09-14 21:03:12.059 NSUIntTest[19579:10b] NSUInteger: 4
2008-09-14 21:03:12.063 NSUIntTest[19579:10b] NSUInteger: 3
2008-09-14 21:03:12.068 NSUIntTest[19579:10b] NSUInteger: 2
2008-09-14 21:03:12.072 NSUIntTest[19579:10b] NSUInteger: 1
2008-09-14 21:03:12.077 NSUIntTest[19579:10b] NSUInteger: 0
2008-09-14 21:03:12.081 NSUIntTest[19579:10b] NSUInteger: -1
2008-09-14 21:03:12.085 NSUIntTest[19579:10b] NSUInteger: -2
...
However, the following does *not* run, starting from a negative
integer (as I would expect):
for (NSUInteger counter = -5; counter <= 0; ++counter)
{
NSLog(@"NSUInteger: %d", counter);
}
Also, the following works properly:
for (NSUInteger counter = 0; counter <= 5; ++counter)
{
NSLog(@"NSUInteger: %d", counter);
}
I noticed that "uint" works the same way. Is this expected behavior?
Thanks,
Alex
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden