如何在命令行下讀入一行輸入
寫命令行下的程序時,總需要一次讀入一行輸入后再做處理。如果用getline()的話,緩沖區char*的大小是事先定好的。雖然把緩沖區設大點也能完成任務,不過總讓人覺得不舒服。最簡單的辦法是用cin.get(),自動讀到(但不包括)'\n'。再要讀接下來一整行時加上一個cin.ignore()把未讀入的'\n'給忽略就行了。
cin.get()詳細說明見這里,其原型如下:
1
int get();
2
istream& get ( char& c );
3
istream& get ( char* s, streamsize n );
4
istream& get ( char* s, streamsize n, char delim );
5
istream& get ( streambuf& sb);
6
istream& get ( streambuf& sb, char delim );

2

3

4

5

6
