一、輸入字符串的方法
在C++中,我們可以使用cin和getline函數來實現輸入字符串的功能。
cin函數用於標準輸入流,即從鍵盤輸入。使用cin函數輸入字符串時,需要注意以下幾點:
1、如果輸入的字符串中含有空格,cin函數會將空格作為輸入結束的標誌。
2、如果輸入的字符串長度超過了定義的char數組的長度,cin函數會截取前面的部分,導致後面的部分丟失,因此需要注意定義合適長度的char數組。
下面是使用cin函數輸入字符串的示例代碼:
<iostream> <string> using namespace std; int main() { char str[100]; cin >> str; cout << "輸入的字符串是:" << str << endl; return 0; }
getline函數用於從標準輸入流中獲取一行字符串,包括空格在內。使用getline函數輸入字符串時,需要注意以下幾點:
1、可以指定getline函數的第二個參數,表示輸入字符串的終止符。如果不指定,則默認為換行符。
2、如果輸入的字符串長度超過了定義的string類型變量的長度,getline函數會自動調整string類型變量的長度,不會導致輸入丟失。
下面是使用getline函數輸入字符串的示例代碼:
<iostream> <string> using namespace std; int main() { string str; getline(cin, str); cout << "輸入的字符串是:" << str << endl; return 0; }
二、從文件中輸入字符串
除了從鍵盤輸入字符串外,我們還可以從文件中輸入字符串。在C++中,我們可以使用fstream庫提供的類來實現文件的讀取和寫入。
我們先來看一下從文件中輸入字符串的基本步驟:
1、打開文件,並驗證是否打開成功。
2、從文件中讀取字符串,存儲到char數組或string類型變量中。
3、關閉文件。
下面是從文件中輸入字符串的示例代碼:
<iostream> <fstream> using namespace std; int main() { fstream fs("filename.txt"); if (!fs.is_open()) { cout << "文件打開失敗" << endl; return 0; } char str[100]; fs.getline(str, 100); cout << "讀取的字符串是:" << str << endl; fs.close(); return 0; }
三、從控制台讀取密碼字符串
在實際開發中,我們經常需要從控制台輸入密碼字符串,並且不希望密碼字符串在控制台上顯示出來。為了解決這個問題,C++提供了getch()函數,可以實現從控制台讀取密碼字符串的功能。
getch()函數用於從標準輸入流中讀取單個字符,而不需要在控制台上顯示出來。我們可以利用這個特性,依次讀取密碼字符串的每個字符,存儲到char數組中,最後輸出密碼字符串時用星號代替每個字符。
下面是從控制台讀取密碼字符串的示例代碼:
<iostream> <conio.h> using namespace std; int main() { char password[20]; int i = 0; cout << "請輸入密碼:" << endl; while (1) { char ch = getch(); if (ch == 13) { password[i] = '\0'; cout < 0) { i--; cout << "\b \b"; } else if (i < 19) { password[i] = ch; i++; cout << '*'; } } cout << "輸入的密碼是:" << password << endl; return 0; }
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/270302.html