[[[NSCalendar currentCalendar] components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year]
или, как указал Джонатан Гринспан , это было бы лучше:
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
int years = [[gregorian components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year];
[gregorian release];
и теперь с ARC это может быть (слишком) кратко:
int years = [[[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] components:NSYearCalendarUnit fromDate:birthDate toDate:[NSDate date] options:0] year];