鱼C论坛

 找回密码
 立即注册
查看: 1894|回复: 4

[已解决]windows的cmd显示出现问题

[复制链接]
发表于 2023-5-28 21:45:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 寒冰越愈 于 2023-5-28 21:51 编辑

权限不够发图片,麻烦大家把文字删除,谢谢大家
图一
ht删tps://imgse.co除m/i/p9beJeA

                               
登录/注册后可看大图

图二
htt删ps://imgse.c除om/i/p9beYdI

                               
登录/注册后可看大图

图二在打印的时候数据间断,且每次的间断可能不一样

图一在打印的时候数据重复打印,以确认为cmd本身问题,将cmd输出信息导出数据正常

上面两个问题我感觉是同一个bug,好像都是win11 新版cmd显示的问题

另.使用旧版cmd时一切都正常,没有上面的问题.

版本        Windows 11 家庭中文版

版本        22H2

安装日期        ‎2022/‎11/‎6

操作系统版本        22621.1778

体验        Windows Feature Experience Pack 1000.22642.1000.0

图一源码附上,这个bug就是在写作业的时候发现的
#include <stdio.h>

int main()
{
        float data[3][12] = {
                {-1,-1,-1,-1,-1,-1,-1,31.3,35.5,58.7,49.6,55.5},
                {59.8,54.9,33.1,38.2,26.6,20.5,27.8,38.5,41.5,44.7,38.1,41.5},
                {34.9,36.4,47.5,37.9,30.6,23.4,26.6,34.3,-1,-1,-1,-1}};
        float max = 0, min = data[1][0], temp;
        
        
        for(int i=0; i<3; i++)
        {
                for(int j=0; j<12; j++)
                {
                        if(data[i][j] < min && data[i][j] != -1)
                                min = data[i][j];
                        if(data[i][j] > max)
                                max = data[i][j];
                }
        }
        
        printf("最大值:%.2f, 最小值:%.2f\n",max, min);
        
        for(int i=0; i<3; i++)
        {
                for(int j=0; j<12; j++)
                {
                        temp = data[i][j];
                        if(temp > 0)
                        {
                                printf("%d年%2d月:",i + 2014 , j +1);
                                while(temp-- >= min)
                                {
                                        printf("*");
                                }
                                printf("\n");
                        }
                }
        }
        
        return 0;
}
最佳答案
2023-5-28 22:05:19
看起来问题可能与 cmd 窗口大小有关。不同版本的命令提示符可能会在窗口被调整大小时表现出不同的行为。

对于图二中的数据间断,您可以尝试使用滚动条在 cmd 窗口中查看所有数据,或者尝试将窗口调整为更大的大小。

对于图一中的重复数据,这可能是由于 cmd 窗口太小而导致输出的某些部分被隐藏而重复打印。您可以尝试使用滚动条和/或将窗口调整为更大的大小以查看完整的输出。如果问题仍然存在,请考虑在代码中添加最终的换行符以确保在输出到 cmd 时每个输出都在新的一行上打印。

在任何情况下,您都可以尝试使用更高级的终端模拟器(例如 Windows Terminal)来获得更好的控制台体验。

有用请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-28 22:05:19 | 显示全部楼层    本楼为最佳答案   
看起来问题可能与 cmd 窗口大小有关。不同版本的命令提示符可能会在窗口被调整大小时表现出不同的行为。

对于图二中的数据间断,您可以尝试使用滚动条在 cmd 窗口中查看所有数据,或者尝试将窗口调整为更大的大小。

对于图一中的重复数据,这可能是由于 cmd 窗口太小而导致输出的某些部分被隐藏而重复打印。您可以尝试使用滚动条和/或将窗口调整为更大的大小以查看完整的输出。如果问题仍然存在,请考虑在代码中添加最终的换行符以确保在输出到 cmd 时每个输出都在新的一行上打印。

在任何情况下,您都可以尝试使用更高级的终端模拟器(例如 Windows Terminal)来获得更好的控制台体验。

有用请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2023-5-28 22:21:01 | 显示全部楼层
sfqxx 发表于 2023-5-28 22:05
看起来问题可能与 cmd 窗口大小有关。不同版本的命令提示符可能会在窗口被调整大小时表现出不同的行为。

...

这个bug就是在windows terminal上面出现的
旧版cmd是没有问题的,数据滚动也是断层的,请问还有解决办法吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-28 22:31:14 | 显示全部楼层
sfqxx 发表于 2023-5-28 22:05
看起来问题可能与 cmd 窗口大小有关。不同版本的命令提示符可能会在窗口被调整大小时表现出不同的行为。

...

哇塞塞,顺着你的思路我安装了terminal的预览版后bug就消失了,非常感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-28 22:34:48 From FishC Mobile | 显示全部楼层
寒冰越愈 发表于 2023-5-28 22:31
哇塞塞,顺着你的思路我安装了terminal的预览版后bug就消失了,非常感谢

不客气
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 22:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表