所以我需要知道如何識別一行文本並輸出它是什麼類型的數據類型,例如如果行說123
,它應該輸出爲123 int
。如何從文件中識別數據類型
現在,我的程序只識別boolean
,string
和char
。我如何得知它是否是int
或double
?
int main() {
string line;
string arr[30];
ifstream file("pp.txt");
if (file.is_open()){
for (int i = 0; i <= 4; i++) {
file >> arr[i];
cout << arr[i];
if (arr[i] == "true" || arr[i] == "false") {
cout << " boolean" << endl;
}
if (arr[i].length() == 1) {
cout << " character" << endl;
}
if (arr[i].length() > 1 && arr[i] != "true" && arr[i] != "false") {
cout << " string" << endl;
}
}
file.close();
}
else
cout << "Unable to open file";
system("pause");
}
感謝
你可以使用正則表達式?如果它匹配\ d + \。\ d +,那麼我們有一個double,如果匹配\ d + $,那麼我們有一個int – saml
有一個無限的數字集可以是整數或浮點數。值123可以是浮點值或整數。有些算法使用小數點,所以123是整數,123是浮點數。某些實現需要科學記數法:1.23E + 2。 –