#include <iostream>
#include <fstream>
#include <string>
#include <algorithm> // for std::reverse
int main() {
std::string filePath = "input.txt"; // 指定輸入檔案的路徑
std::ifstream inFile(filePath); // 建立檔案輸入流對象
if (!inFile.is_open()) {
std::cerr << "無法開啟檔案: " << filePath << std::endl;
return 1; // 錯誤處理:無法開啟檔案
}
std::string inputString;
if (std::getline(inFile, inputString)) { // 從檔案讀取一行
std::reverse(inputString.begin(), inputString.end()); // 反轉字串
std::cout << "反轉後的字串為: " << inputString << std::endl; // 輸出反轉後的字串
} else {
std::cerr << "檔案是空的或讀取時發生錯誤。" << std::endl;
return 1; // 錯誤處理:檔案空或讀取失敗
}
inFile.close(); // 關閉檔案流
return 0;
}
這段程式碼假設你有一個名為input.txt的文本檔案,其中包含你想要反轉的字串。程式首先嘗試打開這個檔案,然後讀取檔案中的字串,使用std::reverse函數將其反轉,最後輸出到標準輸出中。如果無法打開檔案或檔案為空,程式會輸出錯誤信息並終止執行。
要運行這個程式,你需要將其保存到一個.cpp檔案中,使用C++編譯器(如g++或clang++)進行編譯,然後執行生成的可執行檔。在運行之前,確保input.txt檔案位於與可執行檔相同的目錄中,或者修改程式中的filePath變量,使其指向正確的檔案路徑。