2011-11-23 46 views
1

我無法理解這行代碼的作用:的sprintf,printf和格式說明

sprintf(obj, "%s.o", root); 

OBJ和根都是字符緩衝區,從我讀根基本上覆制到OBJ? 我不確定「%s.o」在做什麼。 %s是指定一個String,但是.o?

感謝您的幫助

+2

它只是將.o添加到根的末尾並將整個事物移動到obj? – drunkmonkey

回答

6

%s將與root內容所代替,而後面跟着一個字符串,它僅僅是一個「額外」的文本.o一部分。例如,如果root有「文件」,則obj將被設置爲「file.o」。

+0

嚴格說來,只有最初(但不包括)第一個0字節的內容纔會被複制。 –

+1

也許這太嚴格了...... :-)但是多謝指點 – sidyll

+1

感謝您的幫助:) – drunkmonkey