fstream file;

file.get( ) ,file.getline( ) ,file.read( )file.write()的第一個參數*p,array[n],ch,int,double,string s資料型態表示格式.

1.put( )只有一個參數,寫入單一字元file.put('ch')格式,而無兩個參數的寫入字串file.put(*p,n)格式.

2.string類別物件s僅有輸入連續字串的cin>>標準輸入格式,和不須連續字串輸入getline(cin,s);與getline(file,s);格式,

  而無get(cin,s) ,put(cin,s) ,read(cin,s) ,write(cin,sget(file,s) ,put(file,s) ,read(file,s),write(file,s )  格式)

get(), read( )write()的第一個參數*p,array[n],ch,int,double,string s資料型態表示格式.

一般指標*p無法使用read()成員函式,以讀取檔案資料內容,作為指標所指向內容.

一般指標*p雖可以有指向字串格式(字串設定給指標),但無法使用write()成員函式,將指標所指向內容寫入檔案中,因此一般指標無法作為get(),  read( )與write()的第一個參數,需將一般指標宣告為指向動態記憶體(char *p=new char;或char  *p=new char[n];)的動態指標.

 

 

表示格式1

表示格式2

表示格式3

*p指標

p

(char*)p

 

char array[n]

array

(char*)array

(char*)&array

struct var

var.name

(char*)var.name

(char*)&var.name

ch字元

&ch

(char*)&ch

 

int

 

(char*)&i

write()無法顯示

double

 

(char*)&d

write()無法顯示

string s

無法執行

 

 

get()與getline()成員函式均是以字串格式讀取,故當第二個size參數設定為1時,僅能存放一個字串結束字符'\0',因此若要存放實際字元則需將第二個參數設定為1以上.

當使用get()成員函式,且第一個參數為i整數(或double)變數,則讀取檔案內容給i整數(或double)變數時,顯示一串奇怪數字.

string 類別來說( //get(),put()??????? )

串流物件cinfilegetline()函式可執行.

但沒有read( )write( )函式可執行.

getline()getline(cin,s);getline(file,s),

read( )沒有read(cin,s)read(file,s)

write()沒有write(cin,s)write(file,s)

put()函式僅有寫入單一字元格式(file.put('ch');),get()除了有讀取單一字元格式,還有讀取字串格式

put()僅能有file.put('ch');與cout.put('ch');取用格式.

無法寫成cout<<"cout.put(c) = "<<cout.put(c)<<endl;格式???????

arrow
arrow
    全站熱搜

    minsin 發表在 痞客邦 留言(0) 人氣()