从键盘分别输入通过空格分割的整型(int)、浮点型(double)、字符型(String)、布尔型(boolean),根据读取的内容判断他们的类型并将他们解析为正确的对象,并都放到一个数组中。输出各个对象的类型
输入格式:
字符串
输出格式:
数据类型
输入样例:
在这里给出一组输入。例如:
2.1 true 123 abcde
输出样例:
在这里给出相应的输出。例如:
double boolean int String
C++字符串流stringstream与string知识介绍与用法小结_stringstream和string的区别-优快云博客
此代码运用了字符串流,可查看以上blog来了解字符串流的运用
#include <iostream> #include <sstream> using namespace std; // 使用标准命名空间 int main() { string input; getline(cin, input); // 从标准输入读取一行输入到字符串 input 中 istringstream iss(input); // 创建一个字符串流 int j = 0; while (iss >> input) { // 通过字符串流逐个读取单词 if (j != 0) cout << " "; // 如果不是第一个单词,输出一个空格 istringstream ss(input); // 创建一个新的字符串流来检查是否为数字 double num; bool isDouble = (ss >> num) && (ss.eof()); // 检查是否为double类型 bool isInt = (isDouble && num == static_cast<int>(num)); // 检查是否为整数 if (isInt) { cout << "int"; // 输出整数类型 } else if (isDouble) { cout << "double"; // 输出双精度浮点类型 } else if (input == "true" || input == "false") { cout << "boolean"; // 输出布尔类型 } else { cout << "String"; // 输出字符串类型 } j = 1; } return 0; // 返回执行成功 }