c++ - 如何在 C++ 中比较 s1 和 s2 而没有 if 语句
问题描述
我正在尝试编写一个遵循这些要求的代码,但是我无法找到一个可以正确比较string1
并且string2
两者都是由用户输入的函数。这是我的代码:
const int COLFMT1 = 20;
const int COLFMT2 = 20;
string s1;
string s2;
size_t lengths1;
// string s1ats2;
cout << "Welcome to String Squids!" << endl;
cout << "--------------------------" << endl;
cout << "Enter string 1 (at least three characters, no spaces): ";
cin >> s1;
cout << "Enter string 2 (no spaces): ";
cin >> s2;
// Show formatted strings
cout << "String 1" << setw(COLFMT1) << right << endl;
cout << "Value: " << setw(COLFMT1) << right << s1 << setw(COLFMT1) << left << endl << endl;
lengths1 = s1.length(); //gathering length of string 1
cout << "Length:" << setw(COLFMT1) << right << lengths1 << setw(COLFMT1) << left << endl << endl;
//s1ats2 = s2.find('s1',9);
//cout << s1ats2;
以下是说明:
将以下六个输出
s1
格式化为两个格式化(无转义序列)列:
- 的内容
s1
- 的长度
s1
- 地点,如果有的话,在
s2
里面找到s1
- 是否
s1[0]
是字母字符
我在第 3 个项目符号中遇到问题,在s2
中找到s1
,然后还要确定它是否是字母字符。
解决方案
您需要的第一个功能是简单的s1.find(s2)
.
第二个功能将需要std::isalpha
推荐阅读
- node.js - Discord.js:如何让机器人 DM 成为服务器中的所有成员?
- java - 为什么 Stream.mapToInt 不处理 NullPointerExceptions?
- reactjs - 无法从存储中读取数据
- amazon-web-services - 如何在aws上存储我的加密密钥?
- google-cloud-firestore - Cloud Firestore 为额外敏感的用户数据拆分访问级别
- mongodb - Golang MongoDB 在列表上使用 $in 运算符 - 结果参数必须是切片地址
- python - 带有英语和希伯来语单元格的 python read_excel
- java - 在接口初始化期间获取 NullPointerException
- spring-boot - Springdoc Swagger 3 - 添加 API 组后无法加载 API 定义
- javascript - 在 React.memo 中需要 useCallback 吗?