Objective c 在Objective C中打印具有多个字符的文本

Objective c 在Objective C中打印具有多个字符的文本,objective-c,Objective C,我觉得这有点违反直觉。如果我想做与scanf等效的操作,并将该输入分配给变量或数组,我该如何做,然后在objective-c中打印它 您可以使用NSMUTABLEARRY并循环NSString测试中随后使用的每个字符 我已经测试过了 NSMutableArray *arr = [[NSMutableArray alloc] init]; NSString *str = [NSString stringWithFormat:@"masdasdada"]; int length = [str len

我觉得这有点违反直觉。如果我想做与scanf等效的操作,并将该输入分配给变量或数组,我该如何做,然后在objective-c中打印它

您可以使用NSMUTABLEARRY并循环NSString测试中随后使用的每个字符 我已经测试过了

NSMutableArray *arr = [[NSMutableArray alloc] init];
NSString *str = [NSString stringWithFormat:@"masdasdada"];
int length = [str length];

for (int i = 0 ; i < length; i++) {
    NSLog(@"%hu",[str characterAtIndex:i]);

    unichar utf8char = [str characterAtIndex:i]; 
    char chars[2];
    int len = 1;

    if (utf8char > 127) {
        chars[0] = (utf8char >> 8) & (1 << 8) - 1;
        chars[1] = utf8char & (1 << 8) - 1; 
        len = 2;
    } else {
        chars[0] = utf8char;
    }

    NSString *string = [[NSString alloc] initWithBytes:chars
                                                length:len 
                                              encoding:NSUTF8StringEncoding];

    NSLog(@"%@",string);
    [arr addObject:[NSString stringWithFormat:@"%@",string]];
}

for (NSMutableString *s in arr) {
    NSLog(@"%@",s);
}

不容易。objective-c API中可用的东西是JSON解析,这在很多情况下都没有意义,因此您最好创建一个ID的c数组,对每个ID进行解析,然后使用[NSArray arrayWithObjects:count:]来编写此代码;请检查我贴出的答案:哇。所以获取这个输入然后打印它有点复杂。很好,但这对他读取数组输入没有帮助。你只回答了一半问题,回答了容易的部分-1.感谢您的通知,我想我没有理解这个问题,我已经编辑了我的答案,让它打印NSString中的每个字符..:不,你完全误解了这个问题。OP要求的是一种从输入创建NSMutableArray的方法,就像从scanf获得的一样,而不是如何输出它