Ну, если у тебя чутье на драматизм c, может быть что-то вроде этого
// One big array
float * p1 = ( float [] ){ 1, 2, 3, 4, 5, 6, 7, 8 };
float * end1 = p1 + 8;
while ( p1 < end1 )
{
CGPoint point = CGPointMake ( * p1, * ( p1 + 1 ) );
p1 += 2;
NSLog ( @"Point ( %f, %f )", point.x, point.y );
}
// Array of 2D tuples
// Not much difference though, maybe easier on the eyes?
float * p2 = ( float * )( float [][ 2 ] ){ { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };
float * end2 = p2 + 8;
while ( p2 < end2 )
{
CGPoint point = CGPointMake( * p2, * ( p2 + 1 ) );
p2 += 2;
NSLog ( @"Point ( %f, %f )", point.x, point.y );
}