-3
我有一個關於在C中的putchar函數的問題。當我在學習時,我偶然發現以下語句: printf("%c\n",putchar('A'+1)+2);
當我編譯和執行程序時,結果是BD。我不敢肯定,當我們輸入putchar('A' + 1)
的結果將是B,但我們如何得到D?這個函數不一次返回一個字符嗎? 在此先感謝confused關於putchar結果C
我有一個關於在C中的putchar函數的問題。當我在學習時,我偶然發現以下語句: printf("%c\n",putchar('A'+1)+2);
當我編譯和執行程序時,結果是BD。我不敢肯定,當我們輸入putchar('A' + 1)
的結果將是B,但我們如何得到D?這個函數不一次返回一個字符嗎? 在此先感謝confused關於putchar結果C
putchar
是做兩件事情:
stdout
由於'B'由putchar
返回,因此它有2個添加到它使'D'。這作爲參數傳遞給printf
,然後將「D \ n」寫入stdout
。
'putchar'返回寫入的字符('B'),然後給這個('D')加上2並將它作爲參數傳遞給'printf'。 –
[這個putchar參考](http://en.cppreference.com/w/c/io/putchar)應該是非常有用的。 –
你期望什麼?你不明白的內容是什麼?在調試器中看到什麼? 「這個函數不一次返回一個字符嗎?」 - D''有多少個字符? – Olaf