2017-01-27 1 views
-8

文字配列を持っていれば文字を入力することしかできません。文字で整数を入力すると、 "abc123"とすると、これは許されません。私はこれをする方法?文字配列に整数値を入力したときに例外をキャッチします

+2

反復と数字をチェックするために '' から 'のstd :: isdigit'を使うのか? –

+0

@GregKikolaは答えとしてそれを書く価値があります。 – user4581301

+0

これまでに何を試してみましたか?更新する必要があります。このリンクを使用してください。http://stackoverflow.com/help/how-to-ask – Prasad

答えて

0
isdigitと一緒に使用 std::none_of

、:文字列の上に

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

int main() 
{ 
    std::string test = "abc123"; 
    if (std::none_of(test.begin(), test.end(), ::isdigit)) 
     std::cout << "All good\n"; 
    else 
     std::cout << "You've entered an integer\n"; 

    // Try with good data 
    test = "abcdef"; 
    if (std::none_of(test.begin(), test.end(), ::isdigit)) 
     std::cout << "All good\n"; 
    else 
     std::cout << "You've entered an integer\n";  
} 

Live Example

関連する問題