0

我是 Cocoa 的新手,需要使用 scanf 捕获输入来运行一个程序,该程序需要一次输入四个变量。

是否有任何控制台、窗口类、画布、备忘录类(如在 delphi 中)可以让我这样做。

塞纳克伯爵

4

5 回答 5

3

您可以将 stdio 与 Objective C 一起使用,它是 C 的完整超集。

如果您的程序从命令行运行,您可以只用 C 编写它。

于 2008-11-03T11:58:16.793 回答
1

Objective C 只是 C 的扩展,Objective C++ 是 C++ 的扩展。您可以使用 scanf,或者如果您愿意,也可以使用 Objective C++(将实现文件重命名为以 .mm 结尾)并使用 C++ iostreams。

于 2008-11-03T12:23:39.113 回答
1
NSString *password=@"rajan";
NSString *scanpass;
char currentpass[10];

NSLog(@"Enter your old password tp compare");
scanf("%s",currentpass);
scanpass = [NSString stringWithUTF8String:currentpass];
//if([password isEqualToString: @"rajan"])
if([password isEqualToString: scanpass])
    NSLog(@"Correct Password");
else 
    NSLog(@"Wrong Password");
于 2010-12-26T11:46:38.277 回答
0

您可以使用NSScanner来解析输入,但正如已经说过的,您使用 C 标准库与 stdin/stdout 进行交互。我会使用 -[NSString initWithUTF8String:] 来获得从 c 字符串到 NSString 的转换。

于 2008-11-03T13:37:20.980 回答
0

Objective-C 只是 C 的一组扩展(以及 libobjc 中的支持库和 API),因此您可以访问任何其他 C 程序所拥有的一切。所以,只需使用scanf.

要将结果放入 中NSString,请使用+[NSString stringWithUTF8String:]或(不太可能)+[NSString stringWithCString:encoding:]

于 2008-11-03T20:46:54.887 回答