C语言不确定循环会影响输入输出缓冲区的刷新

如下代码,在打印出"测试文本"之前会卡顿一小段时间,主要原因是下方循环的不确定性,编译器不知道下方的循环什么时候结束,把scanf()删掉同时循环体换一行任意的一行代码,一样会有卡顿。

如果循环结束条件是确定的,编译器一眼可以看出来的,那么就不会有卡顿。

编译环境DevC++5.11自带的TDM-GCC 4.9.2 64-bit Release

cpp 复制代码
#include<stdio.h>

int main(){
	int c=0,s=0;
    printf("测试文本\n");
    
	while(1){
		scanf("%d", &c);
		if(c==1) break; 
	}
	printf("所有正奇数的和为:%d\n", s);
    return 0;
}
相关推荐
夏鹏今天学习了吗1 天前
【LeetCode热题100(87/100)】最小路径和
算法·leetcode·职场和发展
哈哈不让取名字1 天前
基于C++的爬虫框架
开发语言·c++·算法
不忘不弃1 天前
模拟内存分配器1
c语言
Lips6111 天前
2026.1.20力扣刷题笔记
笔记·算法·leetcode
2501_941329721 天前
YOLOv8-LADH马匹检测识别算法详解与实现
算法·yolo·目标跟踪
洛生&1 天前
Planets Queries II(倍增,基环内向森林)
算法
小郭团队1 天前
1_6_五段式SVPWM (传统算法反正切+DPWM2)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·matlab·dsp开发
小郭团队1 天前
1_7_五段式SVPWM (传统算法反正切+DPWM3)算法理论与 MATLAB 实现详解
开发语言·嵌入式硬件·算法·matlab·dsp开发
鱼跃鹰飞1 天前
Leetcode347:前K个高频元素
数据结构·算法·leetcode·面试
bybitq1 天前
LeetCode236-二叉树的最近公共祖先(LCA)问题详解-C++
算法·深度优先