2009-10-14 11 views

Odpowiedz

33
NSString *testString = @"test"; 
+0

To była odpowiedź, której szukałem. Chociaż odpowiedź Carl Norum jest bardzo szczegółowa. – powtac

+1

Btw, do czego służy '@ '? – powtac

+1

Odpowiedź jest jasno wyjaśniona w odpowiedzi Carl Norum. '@" aString "' tworzy obiekt NSString. '" aString "' jest ciągiem C, który jest po prostu tablicą znaków. –

45

AC łańcuch jest tak jak w C.

char myCString[] = "test"; 

NSString używa @ charakter:

NSString *myNSString = @"test"; 

Jeśli trzeba zarządzać pamięci NSString za:

NSString *myNSString = [NSString stringWithFormat:@"test"]; 
NSString *myRetainedNSString = [[NSString alloc] initWithFormat:@"test"]; 

Or jeśli potrzebujesz edytowalnego ciągu:

NSMutableString *myMutableString = [NSMutableString stringWithFormat:@"test"]; 

Możesz przeczytać więcej z Apple NSString documentation.

+0

Jaka jest różnica beween NSString i char? – powtac

+4

'char' jest natywnym typem C, a' NSString'/'NSMutableString' to klasy służące do zarządzania ciągami w Cocoa/Objective-C. W rzeczywistości nie mają one dużego związku z normalnym łańcuchem C (tablica 'char'). Powinieneś zapoznać się z podstawową "instrukcją" w Objective-C, aby rozpocząć. –

+0

Co oznacza '@ '? – powtac

9

Standardowe przypisanie ciąg można zrobić tak:

NSString *myTestString = @"abc123"; 

Oprócz podstawowego przydziału Istnieje całe mnóstwo sposobów można uzyskać przy użyciu klasy NSString że nie dostaniesz w standardowej tablicy Char []. Dlatego programowanie obiektywne jest lepsze!

Na przykład wypełnienie ciąg z treścią strony internetowej html, z jednej linii kodu! **

utworzenia i zainicjowania Struny

+ string 
– init 
– initWithBytes:length:encoding: 
– initWithBytesNoCopy:length:encoding:freeWhenDone: 
– initWithCharacters:length: 
– initWithCharactersNoCopy:length:freeWhenDone: 
– initWithString: 
– initWithCString:encoding: 
– initWithUTF8String: 
– initWithFormat: 
– initWithFormat:arguments: 
– initWithFormat:locale: 
– initWithFormat:locale:arguments: 
– initWithData:encoding: 
+ stringWithFormat: 
+ localizedStringWithFormat: 
+ stringWithCharacters:length: 
+ stringWithString: 
+ stringWithCString:encoding: 
+ stringWithUTF8String: 

Tworzenie i inicjowanie ciąg z pliku

+ stringWithContentsOfFile:encoding:error: 
– initWithContentsOfFile:encoding:error: 
+ stringWithContentsOfFile:usedEncoding:error: 
– initWithContentsOfFile:usedEncoding:error: 

Tworzenie i inicjowanie String z adresu URL

+ stringWithContentsOfURL:encoding:error: 
– initWithContentsOfURL:encoding:error: 
+ stringWithContentsOfURL:usedEncoding:error: 
– initWithContentsOfURL:usedEncoding:error: 

Jeśli potrzebujesz ciąg w którym można edytować swój bufor chcesz spojrzeć na:

NSMutableString 
Powiązane problemy