Colocación del asterisco en Objective-C

Acabo de empezar a aprender Objective-C, proveniente de un fondo VB .Net y C # .Net. Entiendo el uso del puntero, pero en los ejemplos de Objective-C veo el asterisco colocado en varios lugares diferentes y, por más que busque, no he podido encontrar una respuesta sobre el motivo. Cada búsqueda que intento muestra todo tipo de explicaciones sobre punteros (que realmente no necesito), pero ni una sola mención de las razones / efectos de las diferentes ubicaciones del asterisco. Aquí hay algunos ejemplos que he visto:

NSString *string;
NSString * string;
(NSString *) string;
NSString* string;

¿Qué significan estas diferentes posiciones del asterisco? Estoy seguro de que es una respuesta simple, pero es frustrante no poder encontrarla en ninguno de los tutoriales y la documentación de referencia de Apple hasta el momento.

¿Puede alguien terminar mi miseria y responder a esta pregunta desconcertante? ¡Gracias!

Respuestas a la pregunta(11)

Su respuesta a la pregunta