首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Raspberry Pi: printf()不适用于wiringPi

Raspberry Pi: printf()不适用于wiringPi
EN

Stack Overflow用户
提问于 2015-06-08 14:21:18
回答 1查看 4.3K关注 0票数 2

我正在尝试一个使用wiringPi的简单代码,如下所示:

代码语言:javascript
复制
#include<wiringPi.h>
#include<stdio.h>

int main(void){
    int i;

    wirintPiSetup();
    pinMode(0,OUTPUT);   //a single LED
    pinMode(8,INPUT);    //tactile switch

    for(;;){
        delay(500);
        //push tactile switch and LED is turning on
        if(digitalRead(8)) digitalWrite(0,0);
        else digitalWrite(0,1);
        printf("%d",digitalRead(8));
    }
}

我预期printf()的结果会输出到控制台,但是它不能工作。printf()不能与wiringPi API同时运行吗?

编译时没有警告。CPU消耗始终在4%以下。在Raspbian上运行。

耽误您时间,实在对不起!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-08 14:36:13

默认情况下,stdout通常是行缓冲的,这意味着它试图将数据写入基础文件直到换行符。但是,由于您从不打印换行符,stdout只会缓冲您的文本,直到它耗尽空间为止。

您可以通过在格式字符串(即"%d\n")中添加换行符,或者在打印后在stdout上调用fflush来解决这个问题。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30711701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档