字符串之前@符号的用途?
问题描述:
我一直在使用Objective-C一段时间,但从未真正理解@符号在所有字符串之前的用途是什么。举例来说,你为什么要声明一个字符串是这样的:字符串之前@符号的用途?
NSString *string = @"This is a string";
,而不是像这样:
NSString *anotherString = "This is another string";
如您在Java或许多其他编程语言做。有没有很好的理由?
答
它表示的NSString(而不是标准的C字符串)
一个NSString是存储Unicode字符串,并提供了一堆方法来辅助操作对象。
C字符串只是一个以\ 0结尾的字符串(字节)。
编辑:好的原因是Objective-C建立在C之上,C语言构造需要仍然可用。 @“”是一个仅用于Objective-C的扩展。
请参阅[@符号在objective-c中代表什么? ](http://stackoverflow.com/questions/25749/what-does-the-symbol-represent-in-objective-c)。 – 2010-12-15 03:00:29
这很有道理。谢谢! – Jumhyn 2010-12-15 03:03:57