我需要編寫一個C程序,其中printf
應返回負值。它應該是這樣的:如何強制printf在c中返回負值?
#include <stdio.h>
int main()
{
int ret_val;
ret_val = printf(something);
printf("%d", ret_val);
}
這應該是一個負數(ret_val應該是負數)的輸出。做你printf
前
int ret = 0;
ret = printf("%lc", (wint_t) -1);
printf("%d\n", ret);
創建輸出錯誤,'printf'在失敗時返回負值。 – 2012-07-05 17:57:31
聽起來很可疑。你在做什麼? – Wug 2012-07-05 17:58:27
雖然特定於linux,但可以將stdout重定向到>/dev/full,寫入時會產生錯誤。雖然在調用fflush()之前可能不會顯示錯誤,或者在callign printf之前將stdout設置爲非緩衝。 – nos 2012-07-05 18:03:47