Я хочу, чтобы пользователь ввел строку и затем присвоил вход NSString. Прямо сейчас мой код похож на это:
NSString *word;
scanf("%s", &word);
scanf
не работает ни с какими типами объектов. Если у вас есть строка на C и вы хотите создать из нее NSString, используйте -[NSString initWithBytes:length:encoding:]
.
Функция scanf читает в C строку (на самом деле массив char), вот так:
char word[40];
int nChars = scanf("%39s", word); // read up to 39 chars (leave room for NUL)
Вы можете преобразовать массив char в NSString вот так:
NSString* word2 = [NSString stringWithBytes:word
length:nChars
encoding:NSUTF8StringEncoding];
Однако scanf работает только с консольными программами (командной строкой). Если вы пытаетесь получить ввод на Mac или iOS-устройстве, то scanf - это не то, что вы хотите использовать для получения пользовательского ввода.