CLion IDE 的输出有时会在执行程序时中断
Output for CLion IDE sometimes cuts off when executing a program
使用 CLion 时,我发现输出有时会中断。
例如当运行宁代码时:
main.cpp
#include <stdio.h>
int main() {
int i;
for (i = 0; i < 1000; i++) {
printf("%d\n", i);
}
fflush(stdout); // Shouldn't be needed as each line ends with "\n"
return 0;
}
预期输出
预期输出显然是每行上的数字 0-999
实际输出
在CLion中多次执行代码后,输出经常变化:
- 有时它会完美地执行并显示所有数字 0-999
- 有时会在不同的点(例如 0-840)中断
- 有时不输出任何东西
return 代码始终为 0!
截图
运行 终端中的代码(即不在 CLion 本身中)
但是,代码在编译和使用终端 运行ning 代码时完美输出数字 0-999。
我花了很多时间认为这是我的代码和内存问题,直到我终于意识到这只是 CLion 的问题。
OS:Ubuntu 14.04 LTS
版本: 2016.1
构建:#CL-145.258
更新
一个合适的解决方法是 运行 调试模式下的代码(感谢@olaf)。
一致认为这是一个 IDE 问题。因此,我已经报告了这个错误。
一个合适的解决方法是在调试模式下执行代码(不需要断点)。
一旦修复此错误,我将更新此问题。
更新 1
警告:除非 JetBrains 特别要求,否则您不应更改注册表中的信息。注册表不在主菜单中是有原因的!使用以下解决方案需要您自担风险!!!
JetBrains 已联系我并提供了合适的解决方案:
- 转到“查找操作”对话框 (CTRL+SHIFT+A)
- 搜索 "Registry..."
- 取消勾选
run.processes.with.pty
然后应该可以正常工作了!
更新 2
错误已添加到此处:
https://youtrack.jetbrains.com/issue/CPP-6254
欢迎点赞!
使用 CLion 时,我发现输出有时会中断。
例如当运行宁代码时:
main.cpp
#include <stdio.h>
int main() {
int i;
for (i = 0; i < 1000; i++) {
printf("%d\n", i);
}
fflush(stdout); // Shouldn't be needed as each line ends with "\n"
return 0;
}
预期输出
预期输出显然是每行上的数字 0-999
实际输出
在CLion中多次执行代码后,输出经常变化:
- 有时它会完美地执行并显示所有数字 0-999
- 有时会在不同的点(例如 0-840)中断
- 有时不输出任何东西
return 代码始终为 0!
截图
运行 终端中的代码(即不在 CLion 本身中)
但是,代码在编译和使用终端 运行ning 代码时完美输出数字 0-999。
我花了很多时间认为这是我的代码和内存问题,直到我终于意识到这只是 CLion 的问题。
OS:Ubuntu 14.04 LTS
版本: 2016.1
构建:#CL-145.258
更新
一个合适的解决方法是 运行 调试模式下的代码(感谢@olaf)。
一致认为这是一个 IDE 问题。因此,我已经报告了这个错误。
一个合适的解决方法是在调试模式下执行代码(不需要断点)。
一旦修复此错误,我将更新此问题。
更新 1
警告:除非 JetBrains 特别要求,否则您不应更改注册表中的信息。注册表不在主菜单中是有原因的!使用以下解决方案需要您自担风险!!!
JetBrains 已联系我并提供了合适的解决方案:
- 转到“查找操作”对话框 (CTRL+SHIFT+A)
- 搜索 "Registry..."
- 取消勾选
run.processes.with.pty
然后应该可以正常工作了!
更新 2
错误已添加到此处: https://youtrack.jetbrains.com/issue/CPP-6254
欢迎点赞!