matlab中fprintf和disp的有多大的區別啊

時間 2021-07-15 12:22:02

1樓:大野瘦子

區別很大,具體如下:

一、輸出的目標不一樣

disp用來直接顯示在命令列裡,非常輕量,fprintf是f(ile)printf(ormat),可以用來直接進行檔案的寫入,如果不指定檔案的fid那麼直接輸出到命令列。

二、用法不同

disp即display,可用來顯示字串、計算結果等。

例子:x= [1 2 3];

disp(['the values of x are: ', num2str(x)]);

結果顯示為:

the values of x are: 1  2  3

fprintf函式可以將資料按指定格式寫入到文字檔案中,也可以顯示字串、計算結果。

其呼叫格式為:

count = fprintf(fid, format, val1, val2, ...)

其中fid是我們要寫入資料檔案的檔案標識,format是控制資料顯示的字串。如果fid丟失,資料將寫入到標準輸出裝置(命令視窗)。 格式(format)字串指定佇列長度,小數精度,域寬和輸出格式的其他方面。

它包括文字數字字元(%)和字元序列(用於指定輸出資料顯示的精確格式)。

三、使用物件

想把字串pi=和變數pi的值顯示在一行上,試用disp(′pi=′,pi),回答這是非法的。這時應該用sprintf函式,它可把資料按要求的格式轉換為字串,再把它與需要顯示的字串組裝成一個長字串,使顯示格式非常靈活,人機介面更為友好,如鍵入:

st=sprintf(′ 圓周率pi= %8.5f′,pi);

disp(st)

結果為圓周率pi=3.14159

其中%為資料格式符,f表示十進位制浮點,8.5表示數字的長度為8位,小數點後5位,從%到f之間的字元都是不顯示的,它只指出顯示資料pi的格式,跟c的printf很相似。

2樓:匿名使用者

disp即display,可用來顯示字串、計算結果等 例子: x= [1 2 3];disp(['the values of x are: ', num2str(x)]);結果顯示為:

the values of x are: 1 2 3fprintf函式可以將資料按指定格式寫入到文字檔案中,也可以顯示字串、計算結果。其呼叫格式為:

count = fprintf(fid, format, val1, val2, ...) 其中fid是我們要寫入資料檔案的檔案標識,format是控制資料顯示的字串。如果fid丟失,資料將寫入到標準輸出裝置(命令視窗)。

格式(format)字串指定佇列長度,小數精度,域寬和輸出格式的其他方面。它包括文字數字字元(%)和字元序列(用於指定輸出資料顯示的精確格式)。例子:

fprintf('%6.4d\n',123) 顯示十進位制整數資料fprintf('%s\n','string') 顯示字元資料fprintf(1,'it''s friday.\n')結果顯示為:

it's friday.

3樓:匿名使用者

一樓二樓是正解,如果想多控制輸出的格式,推薦使用fprintf

4樓:匿名使用者

這個帖子不回對不起自己!我是不是太肉麻了!matlab技術論壇我來了!

c語言fprintf和fscanf語法規則是什麼

福建省寧德市 fprintf函式 標頭檔案 include 定義函式 int fprintf file stream,const char format,函式說明 fprintf 會根據引數format 字串來轉換並格式化資料,然後將結果輸出到引數stream 指定的檔案中,直到出現字串結束 0 為...

如何在matlab中呼叫matlab中已有的函式

呼叫函式檔案 myfile.m clear clcfor t 1 10 y mylfg t end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylfg.m 一致 y x 1 3 注 這種方法要求自定義函式必須單獨寫一個m檔案,不能與...

matlab中 rand和 randn的區別,請分別舉例

歷史小店 主要區別 1 rand 生成均勻分佈的偽隨機數。分佈在 0 1 之間主要語法 rand m,n 生成m行n列的均勻分佈的偽隨機數,rand m,n,double 生成指定精度的均勻分佈的偽隨機數,引數還可以是 single rand randstream,m,n 利用指定的randstre...