0

C ++cin入力をチェックする方法はA-Zパターンです

次のことを確認するにはどうすればよいですか

cin >> input;

および入力はA-Z、数値ではないことを意味し、およびはAZです。

4

2 に答える 2

5

文字列であると仮定するinputと、大文字以外の文字をチェックして、std::find_if適切でない最初の文字を探すことができます。

#include <iostream>
#include <algorithm>
#include <cctype>
#include <string>

int main() {
  std::string input;
  std::cin >> input;
  std::cout << (std::find_if(input.begin(), input.end(), std::isupper) != input.end()) << "\n";
}

C ++ 11を使用している場合は、次のように少し簡略化されます。

std::all_of(input.begin(), input.end(), std::isupper)
于 2012-07-26T06:44:28.023 に答える
1

入力を考慮するとstring:

bool flag = true;
for(int i = 0; i < input.length(); ++i) {
 if (input[i] < 'A' || input[i] > 'Z') {
  flag = false;
  break;
 }
}

次にflag、あなたが望むものを示します。他の文字テーブル (ASCII、Unicode 以外) を使用する場合は、isalphafromを使用できますcctype

于 2012-07-26T06:38:13.193 に答える