2009-06-18 63 views
17

有沒有任何方法可以輸出/顯示來自MATLAB程序的信息而沒有換行符?在沒有換行的情況下顯示來自MATLAB的信息

我的MATLAB程序不時輸出一個數字。輸出數字之間的程序做了很多其他的東西。這是一個主要用於指示某種進度的構造,並且每次都不用換行就可以了,只是爲了讓用戶更易讀。這大約是我要找的:

Current random seed: 
4 7 1 1 

從程序的下一個輸出將在同一行,如果它仍然像以前一樣做同樣的事情。

我已閱讀關於disp,sprintf和格式的文檔,但沒有找到我要找的內容。這並不意味着它不在那裏。 ;)

回答

22

除非明確地告訴它,否則fprintf函數不會添加換行符。省略fid參數以將其打印到命令窗口。

fprintf('Doing stuff... '); 
for i = 1:5 
    fprintf('%d ', i); 
    % do some work on that pass... 
end 
fprintf(' done.\n'); % That \n explicitly adds the linefeed 

使用的sprintf不會相當的工作:它創建一個字符串沒有一個換行符,但這時如果使用DISP()或省略分號,DISP自己的顯示邏輯將添加換行符。

+2

注意:根據您的平臺,您可能需要調用「drawnow;」在fprintf之後。 – 2009-06-18 13:59:29

相關問題