原程序要求單行輸入 整數1;整數2(如 1,2345,6789;9,8765,4321),用戶希望改為分兩行輸入。
保持 Creat(string) 接口不變,在 main() 中將兩行拼接為帶分號的單字符串傳入:
int main() {
cout << "* 任意長整數的加法 *\n";
cout << "* 注意:輸入時每四位用逗號隔開 *\n\n";
string ch1, ch2, ch3;
cout << "請輸入整數1:\n";
cin >> ch1;
cout << "請輸入整數2:\n";
cin >> ch2;
ch3 = ch1 + ";" + ch2; // 拼接為原格式
LinkList List;
List.Creat(ch3); // 復用原解析邏輯
List.Add();
cout << "兩整數的和為:";
List.Display();
return 0;
}
cin >> ch1 以空白符分隔,適合無空格的數字串。getline(cin, ch1) 並去除換行符。Creat 解析邏輯依賴 ; 分割兩數,, 分割 4 位組,拼接後完全兼容。長遠看,可將 Creat 拆分為 Creat(string num1, string num2) 雙參數版本,內部調用私有 ParseNumber(string),解耦輸入格式與解析邏輯。