c - 如果使用 CLion 而不是直接使用 gcc 编译,C 程序的行为会有所不同。为什么?
问题描述
我正在编写一个使用 C90 连续播放 4 个的程序。
我使用 ASCII 字符为控制台制作了一个 UI。
如果我使用 C Lion 编译程序,我会得到以下输出:
如果我使用 gcc main.c 编译它然后运行 ./a.out 我得到以下结果:
所以很明显,如果我直接使用 gcc 编译它,这个点字符的大小会有所不同。
有谁知道这怎么可能发生?
负责打印游戏行的代码如下所示:
void printGameLine(int line[7]) {
int i;
printf("┃");
for (i = 0; i < 7; ++i) {
printColor(line[i]);
line[i] == 0 ? printf(" ") : printf(" ⬤ ");
printColor(0);
printf("┃");
}
printf("\n");
}
负责颜色的代码如下所示:(如果这有什么不同)
/**
* prints the color
* @param player -1 First player, 0 neutral, 1 Second Player
*/
void printColor(int player) {
switch (player) {
case 1:
printf("\033[0;31m"); /*red*/
break;
case -1:
printf("\033[0;33m");/*yellow*/
break;
default:
printf("\033[0m");/*neutral*/
break;
}
}
解决方案
推荐阅读
- gradle - 如何使用环境名称设置 gradle test 命令
- c# - C# ChromeDriver:javascript 错误:未处理的对象
- java - 我需要文件结尾的正确组合键
- r - 有没有一种方法可以在数据框中绑定不同数量的行?
- python - 使用数字的虚部时如何更改列表中的元素
- javascript - 用于反应应用程序的代码沙箱的 babel 配置
- python - 将值转换为 ids 的 torchtext 字段得到错误整数是必需的
- r - 通过 mc.cores 与 makePSOCKcluster 设置内核?
- python-3.x - pyqtdeploy:配置qt时失败
- python - 如何在python字符串中用'/'替换'\'