字符串前@符号的用途?

时间:2010-12-15 02:53:37

标签: iphone objective-c

我一直在使用Objective-C一段时间了,但是从来没有真正理解所有字符串之前@符号的用途是什么。例如,为什么必须声明这样的字符串:

NSString *string = @"This is a string";

而不是这样:

NSString *anotherString = "This is another string";
正如您在Java或许多其他编程语言中所做的那样。有充分的理由吗?

1 个答案:

答案 0 :(得分:12)

它表示NSString(而不是标准C字符串)

NSString是一个存储unicode字符串的Object,它提供了一堆方法来协助操作。

C字符串只是一个\ 0终止字符串(字节)。

编辑:好的理由是Objective-C建立在C之上,C语言结构需要仍然可用。 @“”是仅限目标c的扩展名。