2010-12-15 3 views
9

지금 당분간 Objective-C를 사용해 왔지만 모든 문자열이 오기 전에 @ 기호의 목적을 실제로 이해 한 적이 없습니다. 할 이유 예, 들어이 같은 문자열을 선언해야 :@ 기호 앞에 문자열을 사용 하시겠습니까?

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

아니라이 좋아 :

NSString *anotherString = "This is another string"; 

자바 또는 많은 다른 프로그래밍 언어에서 할 수있다. 좋은 이유가 있니?

+3

[@ 기호는 목표 -c에서 무엇을 의미합니까? ] (http://stackoverflow.com/questions/25749/what-does-the-symbol-represent-in-objective-c). –

+0

그건 의미가 있습니다. 감사! – Jumhyn

답변

12

IT는있는 NSString (보다는 표준 C 열)

있는 NSString 유니 코드 문자열을 저장하고 조작을 지원하는 방법의 무리를 제공하는 목적이다.

C 문자열은 \ 0 종료 된 문자 묶음 (바이트)입니다.

EDIT : Objective-C가 C 위에 빌드 된 좋은 이유는 C 언어 구문을 계속 사용할 수 있어야하기 때문입니다. @ ""는 objective-c 전용 확장입니다.

+0

지금 받으십시오. 고맙습니다! – Jumhyn

+4

ObjC에서 무언가 앞에 @가 표시되면 ObjC가 C로하는 확장자의 일부인 것이 좋습니다. @interface, @implementation, @protocol, @selector, @class 등 @는 비공식적 인 Objective-C 네임 스페이스. 그것은 코코아의 모든 부분에 'NS'라는 접두사가 붙어 다른 일들과 충돌하지 않는 것과 유사합니다. – Ken

관련 문제