本文目錄一覽:
C++ 輸入輸出流是什麼意思?
可以把流看作是一種數據的載體,通過它可以實現數據交換和傳輸。就像水流是一串水組成的 計算機中的數據流就是由一串數據組成的東西。
C++的輸入輸出流及文件操作
1. C++保留C的輸入輸出單個字符的函數
(1) putchar(c) —— 字符輸出
例程:
#include
using namespace std;
int main()
{
char a,b,c;
a=’B’; b=’O’;c=’Y’;
putchar(a); putchar(b); putchar(c);putchar(‘/n’);
putchar(66);putchar(79);putchar(89);putchar(10); //10是換行的ASCII碼
return 0;
}
(2) getchar() ——字符輸入函數
例程:
#include
using namespace std;
int main()
{
char c;
c=getchar();
putchar(c+32); //轉化為小寫字母,大小寫之間包括[ / ] ^ – 、6個字符,因此不加26加32。’A’=65
putchar(‘/n’);
return 0;
}
也可用cout來輸出: cout(c=getchar()+32);
2. scanf()、printf()函數的輸入和輸出
scanf(格式控制,輸出表列);
printf(格式控制,輸出表列);
例程:
#include
using namespace std;
int main()
{
int a;
float b;
char c;
scanf(“%d % c % f”, a,c,b);
printf(“a=%d, b=%f, c=%c /n”,a,b,c);
return 0;
}
3. 標準輸入輸出流cin、cout
包括頭文件#include
輸入輸出流的控制符要加入頭文件 #include
cout”dec:”
cout.put(97); //顯示a字符–使用cout的成員函數put(c)
cin成員函數get()
(1) 不帶參數的
char c=cin.get(); //用cin的成員函數get()從鍵盤讀入一個字符到c中去
(2) 帶一個參數的
cin.get(ch); //從輸入的流中接受一個字符,並賦給字符變量ch
(3) 帶三個參數的
cin.get(字符數組,字符的個數n,終止字符)
例程:
#include
using namespace std;
int main()
{
char ch[20];
cout”in put a string:”
cin.get(ch,10,’/n’); /*取得輸入流的前10-1=9個字符賦值給ch數組的前9個元素,並規定換行符為為輸入流的終止結束符*/
cout
return 0;
}
如輸入:1 2 34567890 //按換行鍵終止流輸入
則輸出:1 2 34567 //只讀得前9個送入ch數組中
cin的成員函數getline() ——從輸入流中讀入一行字符
cin.getline(字符數組(或字符指針),字符的個數n,終止字符)
例程:
#include
using namespace std;
int main()
{
char ch[20];
cout”input a string:”
cinch;
cout”The string read with cin is:”
cin.getline(ch,20,’/’); //讀取19個字符到ch數組或遇到’/’結束
cout”The second part is:”
cin.getline(ch,20); //讀取19個字符到ch數組或遇到’/n’結束,遇到’/’仍作為字符讀入
cout”The third part is:”
return 0;
}
istream類的其他的成員函數如:eof(),在輸入流中讀取數據,如果到達末尾(遇到文件結束符),則eof()返回真,否則為假.
例程:
#include
using namespace std;
int main()
{
char c;
while(!cin.eof()) //若未遇到文件結束符
if((c=cin,get())!=’ ‘) //檢查讀入的字符是否為空格字符
cout.put(c);
return 0;
}
4. 磁盤文件的打開和關閉
打開
ofstream outfile;
if(outfile.open(“f1.data”,ios::app)==0) // 打開
cout”打開失敗!”;
……………………
outfile.close(); //關閉
5. 文件寫入
#include
#include
#include //一定不能少了,否則報錯 error C2679
using namespace std;
int main()
{
string str;
ofstream out(“d.txt”,ios::out); //等價於ofstream out(“d.txt”)
if(!out) //若打開失敗,out返回0值
{
cerr”打開失敗!”
exit(0);
}
str=”床前明月光/n疑是地上霜/n舉頭望明月/n低頭思故鄉/n”;
out return 0;
}
6. 讀文件到控制台
#include
#include
#include
using namespace std;
int main()
{
ifstream infile(“d://new//d.txt”,ios::in); //定義輸入文件的流對象,以輸入方式打開磁盤文件d.txt,第二個參數可去
if(!infile)
{
cerr”打開失敗!” exit(1);
}
for(string str;getline(infile,str);) //逐行打開並逐行顯示,因此在循環中實現
cout infile.close();
return 0;
}
或把 for(string str;getline(in,str);)
cout
兩句改為 string str;
while(getline(in,str))
cout
7. 文件複製
#include
#include
#include
using namespace std;
int main()
{
ifstream in(“d.txt”);
if(!in)
{
cerr”打開源文件失敗!” exit(1);
}
ofstream out(“b.txt”);
if(!out)
{
cerr”打開目的文件失敗!” exit(1);
}
for(string str;getline(in,str);)
out cout”文件複製成功!”
in.close();
out.close();
return 0;
}
8. 自定義一個文件讀入的函數 void display( char *filename)
#include
#include
#include
using namespace std;
void display(char *filename)
{
ifstream infile(filename,ios::in);
if(!infile)
{
cerr”打開失敗!” exit(1);
}
char ch;
while(infile.get(ch))
cout.put(ch);
cout infile.close();
}
int main()
{
display(“d.txt”);
return 0;
}
9.關於文件讀寫的綜合應用
#include
#include
using namespace std;
//從鍵盤讀入字母並存入文件“d.txt”中
void save_to_file()
{
ofstream ofile(“d.txt”);
if(!ofile)
{
cerr”打開失敗d.txt!” exit(1);
}
char c[80];
cin.getline(c,80); //從鍵盤逐個讀入一行字符
for(int i=0;c[i]!=0;i++) //對字符逐個處理,知道遇到’/n’結束
if(c[i]=65 c[i]=90||c[i]=97 c[i]=122)
{
ofile.put(c[i]); //將字母存入磁盤文件d.txt
cout }
cout ofile.close();
}
//將”d.txt”中的字母轉化為大寫字母並存入”out.txt”中
void get_from_file()
{
char ch;
ifstream infile(“d.txt”);
if(!infile)
{
cerr”打開失敗d.txt!” exit(1);
}
ofstream outfile(“out.txt”);
if(!infile)
{
cerr”打開失敗out.txt!” exit(1);
}
while(infile.get(ch)) //逐個讀入字符成功後執行下面的語句
{
if(ch=97 ch=122)
ch=ch-32;
outfile.put(ch);
cout }
cout infile.close();
outfile.close();
}
int main()
{
save_to_file();
get_from_file();
return 0;
}
=========================== C/C++的字符或字符數組的讀入函數總結=====================
1、cin
1、cin.get()
2、cin.getline()
3、getline()
4、gets()
5、getchar()
1、cin
用法1:最基本,也是最常用的用法,輸入一個數字:
#include
using namespace std;
main ()
{
int a,b;
cinab;
cout}
輸入:2[回車]3[回車]
輸出:5
用法2:接受一個字符串,遇“空格”、“TAB”、“回車”都結束
#include
using namespace std;
main ()
{
char a[20];
cina;
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkljkl jkljkl //遇空格結束
輸出:jkljkl
2、cin.get()
用法1: cin.get(字符變量名)可以用來接收字符
#include
using namespace std;
main ()
{
char ch;
ch=cin.get(); //或者cin.get(ch);
cout}
輸入:jljkljkl
輸出:j
用法2:cin.get(字符數組名,接收字符數目)用來接收一行字符串,可以接收空格
#include
using namespace std;
main ()
{
char a[20];
cin.get(a,20);
cout}
輸入:jkl jkl jkl
輸出:jkl jkl jkl
輸入:abcdeabcdeabcdeabcdeabcde (輸入25個字符)
輸出:abcdeabcdeabcdeabcd (接收19個字符+1個’/0’)
3、cin.getline() // 接受一個字符串,可以接收空格並輸出
getline 會將換行符替換為空字符
#include
using namespace std;
main ()
{
char m[20];
cin.getline(m,5);
cout}
輸入:jkljkljkl
輸出:jklj
接受5個字符到m中,其中最後一個為’/0’,所以只看到4個字符輸出;
如果把5改成20:
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jklf fjlsjf fjsdklf
輸出:jklf fjlsjf fjsdklf
//延伸:
//cin.getline()實際上有三個參數,cin.getline(接受字符串的看哦那間m,接受個數5,結束字符)
//當第三個參數省略時,系統默認為’/0′
//如果將例子中cin.getline()改為cin.getline(m,5,’a’);當輸入jlkjkljkl時輸出jklj,輸入jkaljkljkl時,輸出jk
當用在多維數組中的時候,也可以用cin.getline(m[i],20)之類的用法:
#include
#include
using namespace std;
main ()
{
char m[3][20];
for(int i=0;i3;i++)
{
cout”/n請輸入第”cin.getline(m[i],20);
}
coutfor(int j=0;j3;j++)
cout”輸出m[“
}
請輸入第1個字符串:
kskr1
請輸入第2個字符串:
kskr2
請輸入第3個字符串:
kskr3
輸出m[0]的值:kskr1
輸出m[1]的值:kskr2
輸出m[2]的值:kskr3
4、getline() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
#include
#include
using namespace std;
main ()
{
string str;
getline(cin,str);
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkl jfksldfj jklsjfl
輸出:jkl jfksldfj jklsjfl
和cin.getline()類似,但是cin.getline()屬於istream流,而getline()屬於string流,是不一樣的兩個函數
5、gets() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
#include
#include
using namespace std;
main ()
{
char m[20];
gets(m); //不能寫成m=gets();
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkl jkl jkl
輸出:jkl jkl jkl
類似cin.getline()裡面的一個例子,gets()同樣可以用在多維數組裡面:
#include
#include
using namespace std;
main ()
{
char m[3][20];
for(int i=0;i3;i++)
{
cout”/n請輸入第”gets(m[i]);
}
coutfor(int j=0;j3;j++)
cout”輸出m[“
}
請輸入第1個字符串:
kskr1
請輸入第2個字符串:
kskr2
請輸入第3個字符串:
kskr3
輸出m[0]的值:kskr1
輸出m[1]的值:kskr2
輸出m[2]的值:kskr3
自我感覺gets()和cin.getline()的用法很類似,只不過cin.getline()多一個參數罷了;
這裡順帶說明一下,對於本文中的這個kskr1,kskr2,kskr3 的例子,對於cin也可以適用,原因是這裡輸入的沒有空格,如果輸入了空格,比如“ks kr jkl[回車]”那麼cin就會已經接收到3個字符串,“ks,kr,jkl”;再如“kskr 1[回車]kskr 2[回車]”,那麼則接收“kskr,1,kskr”;這不是我們所要的結果!而cin.getline()和gets()因為可以接收空格,所以不會產生這個錯誤;
6、getchar() //接受一個字符,需包含“#include”
#include
#include
using namespace std;
main ()
{
char ch;
ch=getchar(); //不能寫成getchar(ch);
cout}
輸入:jkljkljkl
輸出:j
//getchar()是C語言的函數,C++也可以兼容,但是盡量不用或少用;
總結:
1.讀入一行
gets(char a[]); //接受一行,遇回車結束
gets(m[i]) //可用於多維數組中
cin.get(char a[],int 5,’/n’) //將字符數組a的前5個字符讀入,遇到換行符結束;比如:a bc12ds,將會讀入4個字符 a bc,外加一個’/0’;
// 一般第三個參數不寫,默認為’/0′
eg:
#include
#include
using namespace std;
main ()
{
string str;
getline(cin,str);
cout}
2.讀入一個字符
getchar() //接受一個字符,需包含“#include”
char ch =getchar();
cin.get(char c) 或者 cin.get()
char ch=cin.get(); 或者cin.get(ch)
getline()和cin.getline()類似,但是cin.getline()屬於istream流,而getline()屬於string流,是不一樣的兩個函數
cin.getline(char a[],int 5,’/n’) //將字符數組a的前5個字符讀入,遇換行符結束;如:a bc12ds,將會讀入4個字符 a bc,外加一個’/0’;
// 一般第三個參數不寫,默認為’/0′
cin.getline(m[i],20) //可用於多維數組中
getline() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
A一直到z的字母
A一直到z的字母如下圖:
表中的音標類似於漢語拼音,是記錄音素的符號,是音素的標寫符號,如漢語的拼音字母、英語的韋氏音標和國際音標等。
它的制定原則是:一個音素只用一個音標表示,而一個音標並不只表示一個音素(雙元音就是由2個音素組成的,相對於單元音來說。由2個音素構成的音標我們稱之為雙元音)。
此外,在不同的語言中,同一個音有不同的拼法。例如,英語的sh,法語的ch,德語的sch,波蘭語的sz,捷克語的s ,實際上都是國際音標的[ʃ]音。
擴展資料:
英語的26個字母的其他分類介紹
按音標的共同點分:
1、含元音音素[ei]
字母:Aa、 Hh、 Jj 、Kk
音標:[ei] 、[eit∫]、 [d3ei]、 [kei]
2、含元音音素[ju:]
字母:Uu 、Qq、 Ww
音標:[ju:] 、[kju:]、 [`d∧blju:]
3、 含元音音素[i:]
字母:Bb、 Cc 、Dd 、Ee 、Gg 、Pp 、Tt 、Vv
音標:[bi:] 、[si:] 、[di:]、 [i:] 、[d3i:] 、[pi:]、[ti:] 、[vi:]
4、含元音音素[e]
字母:Ff 、Ll 、Mm 、Nn 、Ss、 Xx 、Zz
音標:[ef] 、[el] 、[em] 、[en] 、[es] 、[eks] 、[zed]
5、含元音音素[ai]
字母:Ii 、Yy
音標:[ai]、 [wai]
上面只有24個字母,剩下的 O 和R 分別是O o ,[əu] 和R r,[a:]。
c語言中的輸入流是什麼意思?
可以把流看作是一種數據的載體,通過它可以實現數據交換和傳輸。就像水流是一串水組成的 計算機中的數據流就是由一串數據組成的東西。
C++的輸入輸出流及文件操作
1. C++保留C的輸入輸出單個字符的函數
(1) putchar(c) —— 字符輸出
例程:
#include
using namespace std;
int main()
{
char a,b,c;
a=’B’; b=’O’;c=’Y’;
putchar(a); putchar(b); putchar(c);putchar(‘/n’);
putchar(66);putchar(79);putchar(89);putchar(10); //10是換行的ASCII碼
return 0;
}
(2) getchar() ——字符輸入函數
例程:
#include
using namespace std;
int main()
{
char c;
c=getchar();
putchar(c+32); //轉化為小寫字母,大小寫之間包括[ / ] ^ – 、6個字符,因此不加26加32。’A’=65
putchar(‘/n’);
return 0;
}
也可用cout來輸出: cout(c=getchar()+32);
2. scanf()、printf()函數的輸入和輸出
scanf(格式控制,輸出表列);
printf(格式控制,輸出表列);
例程:
#include
using namespace std;
int main()
{
int a;
float b;
char c;
scanf(“%d % c % f”, a,c,b);
printf(“a=%d, b=%f, c=%c /n”,a,b,c);
return 0;
}
3. 標準輸入輸出流cin、cout
包括頭文件#include
輸入輸出流的控制符要加入頭文件 #include
cout”dec:”
cout.put(97); //顯示a字符–使用cout的成員函數put(c)
cin成員函數get()
(1) 不帶參數的
char c=cin.get(); //用cin的成員函數get()從鍵盤讀入一個字符到c中去
(2) 帶一個參數的
cin.get(ch); //從輸入的流中接受一個字符,並賦給字符變量ch
(3) 帶三個參數的
cin.get(字符數組,字符的個數n,終止字符)
例程:
#include
using namespace std;
int main()
{
char ch[20];
cout”in put a string:”
cin.get(ch,10,’/n’); /*取得輸入流的前10-1=9個字符賦值給ch數組的前9個元素,並規定換行符為為輸入流的終止結束符*/
cout
return 0;
}
如輸入:1 2 34567890 //按換行鍵終止流輸入
則輸出:1 2 34567 //只讀得前9個送入ch數組中
cin的成員函數getline() ——從輸入流中讀入一行字符
cin.getline(字符數組(或字符指針),字符的個數n,終止字符)
例程:
#include
using namespace std;
int main()
{
char ch[20];
cout”input a string:”
cinch;
cout”The string read with cin is:”
cin.getline(ch,20,’/’); //讀取19個字符到ch數組或遇到’/’結束
cout”The second part is:”
cin.getline(ch,20); //讀取19個字符到ch數組或遇到’/n’結束,遇到’/’仍作為字符讀入
cout”The third part is:”
return 0;
}
istream類的其他的成員函數如:eof(),在輸入流中讀取數據,如果到達末尾(遇到文件結束符),則eof()返回真,否則為假.
例程:
#include
using namespace std;
int main()
{
char c;
while(!cin.eof()) //若未遇到文件結束符
if((c=cin,get())!=’ ‘) //檢查讀入的字符是否為空格字符
cout.put(c);
return 0;
}
4. 磁盤文件的打開和關閉
打開
ofstream outfile;
if(outfile.open(“f1.data”,ios::app)==0) // 打開
cout”打開失敗!”;
……………………
outfile.close(); //關閉
5. 文件寫入
#include
#include
#include //一定不能少了,否則報錯 error C2679
using namespace std;
int main()
{
string str;
ofstream out(“d.txt”,ios::out); //等價於ofstream out(“d.txt”)
if(!out) //若打開失敗,out返回0值
{
cerr”打開失敗!”
exit(0);
}
str=”床前明月光/n疑是地上霜/n舉頭望明月/n低頭思故鄉/n”;
out return 0;
}
6. 讀文件到控制台
#include
#include
#include
using namespace std;
int main()
{
ifstream infile(“d://new//d.txt”,ios::in); //定義輸入文件的流對象,以輸入方式打開磁盤文件d.txt,第二個參數可去
if(!infile)
{
cerr”打開失敗!” exit(1);
}
for(string str;getline(infile,str);) //逐行打開並逐行顯示,因此在循環中實現
cout infile.close();
return 0;
}
或把 for(string str;getline(in,str);)
cout
兩句改為 string str;
while(getline(in,str))
cout
7. 文件複製
#include
#include
#include
using namespace std;
int main()
{
ifstream in(“d.txt”);
if(!in)
{
cerr”打開源文件失敗!” exit(1);
}
ofstream out(“b.txt”);
if(!out)
{
cerr”打開目的文件失敗!” exit(1);
}
for(string str;getline(in,str);)
out cout”文件複製成功!”
in.close();
out.close();
return 0;
}
8. 自定義一個文件讀入的函數 void display( char *filename)
#include
#include
#include
using namespace std;
void display(char *filename)
{
ifstream infile(filename,ios::in);
if(!infile)
{
cerr”打開失敗!” exit(1);
}
char ch;
while(infile.get(ch))
cout.put(ch);
cout infile.close();
}
int main()
{
display(“d.txt”);
return 0;
}
9.關於文件讀寫的綜合應用
#include
#include
using namespace std;
//從鍵盤讀入字母並存入文件“d.txt”中
void save_to_file()
{
ofstream ofile(“d.txt”);
if(!ofile)
{
cerr”打開失敗d.txt!” exit(1);
}
char c[80];
cin.getline(c,80); //從鍵盤逐個讀入一行字符
for(int i=0;c[i]!=0;i++) //對字符逐個處理,知道遇到’/n’結束
if(c[i]=65 c[i]=90||c[i]=97 c[i]=122)
{
ofile.put(c[i]); //將字母存入磁盤文件d.txt
cout }
cout ofile.close();
}
//將”d.txt”中的字母轉化為大寫字母並存入”out.txt”中
void get_from_file()
{
char ch;
ifstream infile(“d.txt”);
if(!infile)
{
cerr”打開失敗d.txt!” exit(1);
}
ofstream outfile(“out.txt”);
if(!infile)
{
cerr”打開失敗out.txt!” exit(1);
}
while(infile.get(ch)) //逐個讀入字符成功後執行下面的語句
{
if(ch=97 ch=122)
ch=ch-32;
outfile.put(ch);
cout }
cout infile.close();
outfile.close();
}
int main()
{
save_to_file();
get_from_file();
return 0;
}
=========================== C/C++的字符或字符數組的讀入函數總結=====================
1、cin
1、cin.get()
2、cin.getline()
3、getline()
4、gets()
5、getchar()
1、cin
用法1:最基本,也是最常用的用法,輸入一個數字:
#include
using namespace std;
main ()
{
int a,b;
cinab;
cout}
輸入:2[回車]3[回車]
輸出:5
用法2:接受一個字符串,遇“空格”、“TAB”、“回車”都結束
#include
using namespace std;
main ()
{
char a[20];
cina;
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkljkl jkljkl //遇空格結束
輸出:jkljkl
2、cin.get()
用法1: cin.get(字符變量名)可以用來接收字符
#include
using namespace std;
main ()
{
char ch;
ch=cin.get(); //或者cin.get(ch);
cout}
輸入:jljkljkl
輸出:j
用法2:cin.get(字符數組名,接收字符數目)用來接收一行字符串,可以接收空格
#include
using namespace std;
main ()
{
char a[20];
cin.get(a,20);
cout}
輸入:jkl jkl jkl
輸出:jkl jkl jkl
輸入:abcdeabcdeabcdeabcdeabcde (輸入25個字符)
輸出:abcdeabcdeabcdeabcd (接收19個字符+1個’/0’)
3、cin.getline() // 接受一個字符串,可以接收空格並輸出
getline 會將換行符替換為空字符
#include
using namespace std;
main ()
{
char m[20];
cin.getline(m,5);
cout}
輸入:jkljkljkl
輸出:jklj
接受5個字符到m中,其中最後一個為’/0’,所以只看到4個字符輸出;
如果把5改成20:
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jklf fjlsjf fjsdklf
輸出:jklf fjlsjf fjsdklf
//延伸:
//cin.getline()實際上有三個參數,cin.getline(接受字符串的看哦那間m,接受個數5,結束字符)
//當第三個參數省略時,系統默認為’/0′
//如果將例子中cin.getline()改為cin.getline(m,5,’a’);當輸入jlkjkljkl時輸出jklj,輸入jkaljkljkl時,輸出jk
當用在多維數組中的時候,也可以用cin.getline(m[i],20)之類的用法:
#include
#include
using namespace std;
main ()
{
char m[3][20];
for(int i=0;i3;i++)
{
cout”/n請輸入第”cin.getline(m[i],20);
}
coutfor(int j=0;j3;j++)
cout”輸出m[“
}
請輸入第1個字符串:
kskr1
請輸入第2個字符串:
kskr2
請輸入第3個字符串:
kskr3
輸出m[0]的值:kskr1
輸出m[1]的值:kskr2
輸出m[2]的值:kskr3
4、getline() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
#include
#include
using namespace std;
main ()
{
string str;
getline(cin,str);
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkl jfksldfj jklsjfl
輸出:jkl jfksldfj jklsjfl
和cin.getline()類似,但是cin.getline()屬於istream流,而getline()屬於string流,是不一樣的兩個函數
5、gets() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
#include
#include
using namespace std;
main ()
{
char m[20];
gets(m); //不能寫成m=gets();
cout}
輸入:jkljkljkl
輸出:jkljkljkl
輸入:jkl jkl jkl
輸出:jkl jkl jkl
類似cin.getline()裡面的一個例子,gets()同樣可以用在多維數組裡面:
#include
#include
using namespace std;
main ()
{
char m[3][20];
for(int i=0;i3;i++)
{
cout”/n請輸入第”gets(m[i]);
}
coutfor(int j=0;j3;j++)
cout”輸出m[“
}
請輸入第1個字符串:
kskr1
請輸入第2個字符串:
kskr2
請輸入第3個字符串:
kskr3
輸出m[0]的值:kskr1
輸出m[1]的值:kskr2
輸出m[2]的值:kskr3
自我感覺gets()和cin.getline()的用法很類似,只不過cin.getline()多一個參數罷了;
這裡順帶說明一下,對於本文中的這個kskr1,kskr2,kskr3 的例子,對於cin也可以適用,原因是這裡輸入的沒有空格,如果輸入了空格,比如“ks kr jkl[回車]”那麼cin就會已經接收到3個字符串,“ks,kr,jkl”;再如“kskr 1[回車]kskr 2[回車]”,那麼則接收“kskr,1,kskr”;這不是我們所要的結果!而cin.getline()和gets()因為可以接收空格,所以不會產生這個錯誤;
6、getchar() //接受一個字符,需包含“#include”
#include
#include
using namespace std;
main ()
{
char ch;
ch=getchar(); //不能寫成getchar(ch);
cout}
輸入:jkljkljkl
輸出:j
//getchar()是C語言的函數,C++也可以兼容,但是盡量不用或少用;
總結:
1.讀入一行
gets(char a[]); //接受一行,遇回車結束
gets(m[i]) //可用於多維數組中
cin.get(char a[],int 5,’/n’) //將字符數組a的前5個字符讀入,遇到換行符結束;比如:a bc12ds,將會讀入4個字符 a bc,外加一個’/0’;
// 一般第三個參數不寫,默認為’/0′
eg:
#include
#include
using namespace std;
main ()
{
string str;
getline(cin,str);
cout}
2.讀入一個字符
getchar() //接受一個字符,需包含“#include”
char ch =getchar();
cin.get(char c) 或者 cin.get()
char ch=cin.get(); 或者cin.get(ch)
getline()和cin.getline()類似,但是cin.getline()屬於istream流,而getline()屬於string流,是不一樣的兩個函數
cin.getline(char a[],int 5,’/n’) //將字符數組a的前5個字符讀入,遇換行符結束;如:a bc12ds,將會讀入4個字符 a bc,外加一個’/0’;
// 一般第三個參數不寫,默認為’/0′
cin.getline(m[i],20) //可用於多維數組中
getline() // 接受一個字符串,可以接收空格並輸出,需包含“#include”
scratch在信息技術里是什麼意思
scratch
[英][skrætʃ][美][skrætʃ]
vt.擦,刮; 擦痛,擦傷; 在…處搔癢; 抓破;
vi.發出刮擦聲; 擦紅,擦傷; 搔癢; 抓,扒;
n.擦,刮; 刮擦聲; 搔痕; 亂寫亂畫;
adj.打草稿用的,隨便寫用的; 碰巧的,僥倖的; 東拼西湊的; 平等比賽的;
第三人稱單數:scratches過去分詞:scratched複數:scratches現在進行時:scratching過去式:scratched
例句:
1.
Did the furniture movers scratch your floor?
移動你的傢俱時,地板是否會因此而刮花?
原創文章,作者:PMJN,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/147441.html