【发布时间】:2012-02-21 14:15:24
【问题描述】:
我的问题在 OOP 语言中很简单,但在 C 语言中并不那么简单。 当用户在控制台中输入一些文本数据,我们为一个示例 ESC 设置了终止字符(文本数据是多行的,我们不知道何时结束)。
所以我的问题是如何从控制台读取文本,如果用户按 esc 来中断我们读取文本数据的循环?
这是一些代码:
printf("Enter the source here(press ESC) : \n");
char buffer[1000][1000];
int counter = 0;
while(1)
{
if (fgets(buffer[counter],sizeof(buffer[counter]),stdin))
{
counter++;
}
}
【问题讨论】:
-
存储
fgets函数的结果,然后使用条件语句检查转义字符。 -
@Cody - 这不起作用,OP希望它在按下 ESC 后立即终止
-
为什么它“在 OOP 语言中很简单”。 OOP 与它有什么关系?你会以什么神奇的方式在 C++ 中做到这一点,这与你在 C 中的做法完全不同?