Objective-c HackerRank如何读取两行输入

时间:2017-06-15 18:42:17

标签: objective-c

对于黑客等级上的这个问题,它需要两行输入。 https://www.hackerrank.com/challenges/ctci-array-left-rotation/problem

输入

5 4

1 2 3 4 5

如何阅读这两行。

#import <Foundation/Foundation.h>
int main()
{
char *word;
scanf("%[^\n]s",word);
NSString* word2 = [NSString stringWithFormat:@"Hello, World.\n%@",[NSString stringWithCString:word encoding:NSUTF8StringEncoding]];
printf("%s", [word2 cStringUsingEncoding:NSUTF8StringEncoding]);
return 0;
}

这是获得第一行,但我将如何阅读第二行。

1 个答案:

答案 0 :(得分:0)

使用fgets(word,...,stdin)代替scanf。确保修剪尾随\ n。

您的代码通常应该崩溃,因为word指向任何地方但不应该覆盖您应该覆盖的缓冲区。使用字符[100]或您需要的任何长度。