Inizio a rispondere alla prima domanda:
NSString *s = @"Hello"
Le stringhe in Objective-C sono implementate attraverso la classe
NSString, si tratta di stringhe costanti, ovvero non è possibile alterarne il contenuto, per gestire stringhe dinamiche si usa la classe
NSMutableString.
In Obj-C
tutti gli oggetti sono riferiti tramite puntatori, e dato che la stringa è un oggetto la sua dichiarazione deve essere:
NSString *s;
Il metodo più semplice per assegnare una stringa è fare:
NSString *s = @"Hello";
Il segno @ indica che la stringa
non è una stringa C, ma una oggetto NSString (tra l' altro le NSString sono in unicode). Dopo l' assegnamento la variabile s punterà alla zona di memoria dove è allocato
un oggetto stringa contenente 'Hello'.