如何在 c++ 中将 s1 和 s2 与 no if 语句进行比较
How can I compare s1 and s2 with no if statements in c++
我正在尝试编写遵循这些要求的代码,但是我无法找到一个可以正确比较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
的长度- 在
s1
内发现s2
的地点(如果有(s1[0]
是否为字母字符
我在使用第 3 个项目符号时遇到问题,其中s2
在s1
中找到,然后还要确定它是否是字母字符。
您需要的第一个函数就是s1.find(s2)
。
需要std::isalpha
第二个函数
其中 s2 位于 s1 中
标准::字符串::查找
例如size_t pos = s1.find(s2);
如果在 s1 中找不到 s2,则将std::string::npos
pos
。 否则,它是位于 s1 内的 s2 的偏移量。
然后还要确定它是否是字母字符。
伊阿尔法
bool isFirstCharacterAlphabetical = ((s1.size() > 0) && ::isalpha(s1[0]));
相关文章:
- "error: no matching function for call to"构造函数错误
- 调用专用模板时出错"no matching function for call to [...]"
- 我的简单if-else语句是如何无法访问的代码
- 如何将enable-if与模板参数和参数包一起使用
- 无论条件是否为true,if总是在c++中执行
- Arduino:for/while/if在void setup()或void loop()之前?——错误:之前需要不合格
- Insert函数不适用于2 if语句C++
- If语句未被求值C++
- C++嵌套if语句,基本货币交换
- 多个If语句与使用逻辑运算符计算条件的单个语句的比较
- 是否可以使用if constexpr删除控制流语句
- 要与"if constexpr"一起使用的编译时消息(在预处理器之后)
- 如何删除peer if else分支中的冗长句子
- 我似乎对if/else的基本语句有问题:/
- if数组上的随机数
- do while 循环中的 if 语句以 yes 或 no 结尾
- 如何在 c++ 中将 s1 和 s2 与 no if 语句进行比较
- opencv cv::addText exception if no window
- 如何仅使用if-else语句(no-for、do/while等)使此代码循环一定次数?(c++)
- 我的 if-else 语句中的 no 选项无法正常工作