Нет никакой разницы. Это вопрос предпочтений и стиля.
Вот переменная типа
NSString
указатель
(NSString* mystring)
Вот переменная типа
NSString
, это указатель
(NSString *mystring)
Преимущество первого подхода:
При кодировании в протоколы нет проблем с некоторыми переменными, имеющими звездочку, а некоторые нет. Пример:
NSString* _myString
id<SomeProtocol> _collaborator
против (более запутанно):
NString *_myString
id<SomeProtocol> _collaborator
Недостаток этого подхода: (как указано)
//Only the first is a pointer.
NSString* _myString, _anotherString
Современные ОО-языки (например, Java), как правило, препятствуют использованию нескольких переменных в одной строке: http://java.sun.com/docs/codeconv/html/CodeConventions.doc5.html#2991