我正在嘗試使用轉換字符來計算迄今爲止使用以下代碼打印的字符數。代碼塊MinGW和%n轉換字符
#include <stdio.h>
int main(void) {
int n;
printf("%s: %nFoo\n", "hello", &n);
printf("%*sBar\n", n, "");
}
當正常工作時,此代碼打印出Hello Foo,然後在下一行上Bar與Foo對齊。
在我的linux系統上使用GCC進行編譯時,這個工作正常。但是,使用我的Windows PC上的代碼塊中的minGW進行編譯時,%n不起作用,並且所有打印的內容都是hello:欄全部在一行上。爲什麼這樣,我可以解決這個問題?
你能鏈接一個文件嗎?我花了一段時間試圖挖掘更多的細節,我很好奇搜索時錯過了什麼。 –
@ShafikYaghmour http://sourceforge.net/apps/trac/mingw-w64/wiki/printf%20and%20scanf%20family – BLUEPIXY