The traditional choice is Objective-C using Apples Cocoa libraries.
Objective-C is basically C with some extensions.
So some basic understanding of C is useful.
Some Objective-C books cover both.
Most OS APIs (Cocoa among them) are used via Objective-C, but some require pure C, making it useful to have some understanding of C.
In the coming years we will most likely see a shift from Objective-C to Apples new programming language Swift. Note that Swift can be added gradually to an existing app by replacing existing Objective-C code or by using Swift for new code.
C++ that is also (mostly) an extension to C, and can be used from Objective-C as Objective-C++. Note that while some OS code is internally C++ based, it will always expose a C or Objective-C interface to the programmer, so while C++ can be used to make OSX/iOS apps its never required.
Summary: learn Objective-C, some C and the Cocoa libraries.
ps: You could also opt to learn Swift instead of Objective-C, but while this may appear attractive there are some drawbacks as the language is still a work in progress.
Expect more crashes and bugs in Xcode and expect some language features to be buggy or to change with later versions of Swift.
It will also be much harder to find sample code using Swift as Apples documentation, sites like Stackoverflow and discussion forums like this one, have until now been using Objective-C, so some basic understanding of Objective-C may be useful simply to be able to understand existing docs.