這是我的C代碼:C中printf()的異常行爲?
#include<stdio.h>
int main()
{
printf("hello","world");
}
當我跑在我的系統的代碼它僅表現爲hello output.Why是沒有顯示的Hello World作爲輸出?在hello和world之間使用的意義是什麼?任何人都可以向我解釋這個嗎?
在此先感謝。
這是我的C代碼:C中printf()的異常行爲?
#include<stdio.h>
int main()
{
printf("hello","world");
}
當我跑在我的系統的代碼它僅表現爲hello output.Why是沒有顯示的Hello World作爲輸出?在hello和world之間使用的意義是什麼?任何人都可以向我解釋這個嗎?
在此先感謝。
您打電話printf
有兩個參數。該聲明中逗號的意義在於它用於區分兩個參數。
printf
的第一個參數是一個可以包含佔位符的格式字符串。其餘的參數是將被替換爲格式字符串而不是佔位符的值。但是你的格式字符串沒有佔位符,所以不使用第二個參數。
這工作雖然:
printf("hello %s", "world");
二者必選其一printf("hello world")
或printf("hello %s", "world")
。你寫的不符合printf manual。
這不是printf的工作方式。閱讀[這裏](http://www.cplusplus.com/reference/clibrary/cstdio/printf/) – jpm 2012-04-06 12:17:13
把逗號拿出來會給你一個'無空間(hello)的世界;) – 2012-04-06 12:24:18