吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1068|回复: 33
收起左侧

[求助] C语言显示闪屏问题

  [复制链接]
一剑飘零 发表于 2022-9-10 10:21
本帖最后由 一剑飘零 于 2022-9-10 11:02 编辑

输出时用了cls清屏命令。可是会一直闪屏。有好的解决方法吗?或者变换一下思路。求大佬不吝赐教。
[C] 纯文本查看 复制代码
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include<Windows.h>


int main(void) {
    time_t start,endl;
    start = time(NULL);
while (1) {
        endl = time(NULL);
        printf("程序总运行了%d秒", endl - start);    //想让这个显示时间的一直显示,不闪屏
        system("cls");
}
        

return 0;

}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

sgbyg 发表于 2022-9-10 10:31
[C++] 纯文本查看 复制代码
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include<Windows.h>
 
 
int main(void) {
        time_t start,endl;
    start = time(NULL);
	int temp = 0;
while (1) {
        
        endl = time(NULL);
        
        if(endl - start != temp){
			system("cls");
			printf("程序总运行了%d秒", endl - start); 
			temp = endl - start;
		}
}
         
 
return 0;
 
}
 楼主| 一剑飘零 发表于 2022-9-10 10:38
sgbyg 发表于 2022-9-10 10:31
[mw_shl_code=cpp,true]#include
#include
#include

感谢感谢。确实是好了,但是还是不定时的会闪。有没有一直不闪的?
我看加了sleep(1000).开始不闪。后面也会闪。你这个方法也是开始不闪。后面过几秒会闪几下。总体是可以了。
excess1989 发表于 2022-9-10 10:46
 楼主| 一剑飘零 发表于 2022-9-10 10:49
excess1989 发表于 2022-9-10 10:46
加了延时还闪?好吧!

刚开始不闪。到9秒后就会闪。肉眼可见的有一些闪。不是那种一直闪。是不定时的闪一次,或者两三次。小瑕疵。不影响。想求一个更彻底的从头至尾一点都不闪的。
 楼主| 一剑飘零 发表于 2022-9-10 11:03
sgbyg 发表于 2022-9-10 10:31
[mw_shl_code=cpp,true]#include
#include
#include

这是什么原理呢?加了判断就不闪了。是因为判断需要时间?
sgbyg 发表于 2022-9-10 11:28
一剑飘零 发表于 2022-9-10 11:03
这是什么原理呢?加了判断就不闪了。是因为判断需要时间?

加了判断 条件不成立就不会执行 就不会闪
白云点缀的蓝 发表于 2022-9-10 11:32
断电重启吧,

免费评分

参与人数 1吾爱币 -1 收起 理由
luliucheng -1 请勿灌水,提高回帖质量是每位会员应尽的义务!

查看全部评分

answdl 发表于 2022-9-10 11:33
可以只样解决闪屏
//隐藏光标
void HideCursor()
{
        CONSOLE_CURSOR_INFO cursor_info = { 1,0 };
        SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
        return;
}

void gotoxy(int x, int y)
{
        HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
        COORD pos;
        pos.X = x;
        pos.Y = y;
        SetConsoleCursorPosition(handle, pos);
        return;
}

加上这两个
#include <Windows.h>

HideCursor();
gotoxy(0, 0);

sgbyg 发表于 2022-9-10 11:42
answdl 发表于 2022-9-10 11:33
可以只样解决闪屏
//隐藏光标
void HideCursor()

确实可行
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 07:50

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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