我只是创建一个简单的程序,获取用户输入然后将其打印回终端。我不知道如何将用户输入作为NSString。我在C中读过关于scanf()的内容,但似乎无法接受字符串。我想知道是否有可能这样做?
答案 0 :(得分:0)
scanf("%s",str);
mystr = [NSString stringWithUTF8String:str];
答案 1 :(得分:0)
您可以使用C库函数scanf
从标准输入读取C字符串,然后使用NSString
创建initWithCString:encoding:
。
答案 2 :(得分: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);
答案 3 :(得分: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);
}