1

我只是在创建一个简单的程序,它获取用户输入然后将其打印回终端。我不知道如何将用户输入作为 NSString 获取。我在 C 中读过有关 scanf() 的内容,但这似乎无法接受字符串。我想知道是否有可能的方法来做到这一点?

4

4 回答 4

0
       scanf("%s",str);
       mystr = [NSString stringWithUTF8String:str];
于 2012-10-31T11:32:05.917 回答
0

您可以使用 C 库函数scanf从标准输入读取 C 字符串,然后NSString使用initWithCString:encoding:.

于 2012-10-31T11:32:36.413 回答
0
printf("Enter your string: ");
scanf("%s", str);                    // read and format into the str buffer
printf("Your string is %s\n", str);    // print buffer

// you can create an NS foundation NSString object from the str buffer
NSString *lastName = [NSString stringWithUTF8String:str];

// %@ calls description o object - in NSString case, prints the string
NSLog(@"lastName=%@", lastName);
于 2012-10-31T13:01:13.673 回答
0

使用以下两个字符串函数之一:

 #include <stdio.h>

 char *fgets(char * restrict str, int size, FILE * restrict stream);

 char *gets(char *str);

使用gets更简单,但在生产代码中使用是不安全的。这是一个使用示例fgets

#define MAX_LENGTH 80

- (void)example
{
    char buf[MAX_LENGTH];
    fgets(buf, MAX_LENGTH, stdin);

    NSString *s = [NSString stringWithUTF8String:buf];
    NSLog(@"%@", s);
}
于 2012-10-31T13:09:20.030 回答