objective-c - 为什么 readline() 在控制台中输入回显?

标签 objective-c c

int main(int argc, const char * argv[])
{
    const char* input = readline(NULL);
    NSLog(@"%d", atoi(input));

    return 0;
}

我试图在控制台中输入一系列字符,但是每当我键入一个键时,相同的字符将紧跟在我刚刚键入的字符之后。 (例如,我在控制台中输入“1”,控制台将显示“11”)此外,当我尝试使用删除键删除输入的字符时。会出现上下颠倒的问号,但是char*里面最后一个字符被删除了?

为什么会发生这一切?

/image/UheQt.png

最佳答案

从 Xcode 5 开始,这是预期的行为。您可以在 Xcode 外部的终端中运行它,它应该表现正常。

关于objective-c - 为什么 readline() 在控制台中输入回显?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21954627/

相关文章:

c - 为什么哈希值是错误的?

c - 如何截去小数点后的值

objective-c - UITextField 中的缩进

ios - NSMutableDictionary中的对象突然变为空

objective-c - NSNotificationCenter : list of observers?

objective-c - 如何计算 iPhone 上的流量

ios - "NSArray' 没有名为 'append' 的成员

c - 为什么clone创建的线程中无法正确调用malloc/free接口(interface)?

c - Scanf 总是返回 0.000000

C: gettimeofday() 每次运行产生相同的值