У моего друга была эта ошибка. Он случайно поместил аргумент функции в программу C в квадратных скобках вместо круглой скобки как это: foo[5]
вместо foo(5)
. Компилятор был совершенно счастлив, потому что имя функции является указателем, и нет ничего недопустимого об индексации от указателя.
Look at NSCalendars components:fromDate:toDate:options method. It allows you to subtract dates and then extract the months property value
NSInteger month = [[[NSCalendar currentCalendar] components: NSCalendarUnitMonth
fromDate: yourFirstDate
toDate: yourSecondDate
options: 0] month];