windows上,用c++编程,输入数据,当输入ctrl+c时,输入结束,这是如何做到的,请高手叫教一下菜鸟,代码…

 我来答
Bk0X
2012-06-30 · TA获得超过9413个赞
知道小有建树答主
回答量:1217
采纳率:60%
帮助的人:668万
展开全部
ctrl+c ? 你说的是ctrl+Z 吧

输入ctrl+Z时, 会出现^Z的符号, 按下回车, 就表示输入结束.

比如说
while(cin >> i) // 像这样就会一直读取, 不断的循环, 但是^Z之后cin就会返回false, 跳出循环
a[x++] = i;
追问
题目上说的是ctrl+c,请大侠继续赐教!
追答
虽然可以是可以, 但是用Ctrl+C, 并不方便, 需要设定回调函数

#include // API头文件

bool next = true;

BOOL WINAPI hander(DWORD key)
{
if(key == CTRL_C_EVENT){
// 当Ctrl+C的时候发生的事情
next = false;
return TRUE;
}
}

int main()
{
int i;
SetConsoleCtrlHandler(hander, TRUE); // 添加事件回调函数
while(next)
cin >> i; // 输入i
}

如上, 并不好用
百度网友3df8970f5
2012-06-30 · TA获得超过918个赞
知道小有建树答主
回答量:1268
采纳率:50%
帮助的人:1065万
展开全部
控制台上输入ctrl+c系统会发一个信号给进程
SIGINT:Receipt of an interactive attention signal.
结束交互操作的信号
自己可以在程序里定制该signal的处理函数,做一些你想做的特别的事情
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式