[英]Raspberry Pi: printf() doesn't work with wiringPi
我正在嘗試一個簡單的代碼,如下所示使用connectioningPi:
#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()無法與connectionPi API同時運行?
編譯時沒有警告。 並且CPU消耗始終低於4%。 在Raspbian上運行。
謝謝你的時間!
默認情況下, stdout
是行緩沖的 ,這意味着它將嘗試推遲將數據寫入基礎文件,直到換行為止。 但是由於您從不打印換行符,因此stdout
只會緩沖文本,直到空間用盡。
您可以通過在格式字符串中添加換行符(即"%d\\n"
)或在打印后在stdout
上調用fflush
來解決此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.