В общем, вы увидите, что знак @
используется во многих местах в Objective-C для синтаксиса, специфичного для этого языка и, следовательно, недопустимого в «простом» C:
@implementation
@interface
@property
@selector
@class
Как отметили почти все, в данном конкретном случае, @"This is a string."
, он используется для указания начала строкового литерала Objective-C. Он также используется в качестве спецификатора формата %@
для обозначения «объекта».
@
изначально был выбран для этих целей, потому что не не использовался ни для чего в C. Оператор "address-of" &
совершенно допустим в Objective-C *, потому что Obj -C является надмножеством C.
* На самом деле, он довольно часто используется в Какао для косвенного возврата значений; см. например Обработка ошибок