C - 循环内的 fprintf 和 printf 不打印到屏幕

标签 c terminal stdio

我刚刚发现函数 fprintf 可以用来在屏幕上打印一些东西。

我在下面有这个最小值,但是它不会向屏幕输出任何内容。为什么?

#include <stdio.h>

int main(void)
{
    int i,j,k;

    for(i=0;i<4;i++)
    {
        for(j=0;j<0;j++)
        {
            for(k=0;k<3;k++)
            {
                printf("test\n");
                fprintf(stderr, "test\n");

            }
        }       
    }

    return 0;
}

我正在运行 ubuntu 14.04 并按如下方式编译此代码: gcc main.c -o main

最佳答案

为什么要打印任何东西?你的一个循环有一个不可能的条件:

    for(j=0;j<0;j++)
              ^---

因为 j0 开始,它永远不会小于 0,所以循环立即退出而不执行循环体。

关于C - 循环内的 fprintf 和 printf 不打印到屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36730181/

相关文章:

objective-c - AVCaptureDevice 的 USB 接口(interface)

c - 从文件中读取和写入

c - 如何使用 printf 使零与小数一起打印

sql - 尝试加载 Postgres 示例数据库 dvdrental

linux - 如何将标准输出写入带有颜色的文件?

bash - stdin 到 zip 命令而不是提示符

c - fscanf 格式说明符到结构

c - Linux :Identifying pages in memory

c - Doxygen - 记录结构变量但不记录结构

c++ - 使用 pthread 的简单程序的输出