C 문자열 또는 문자*가 숫자로만 구성되어 있는지 확인하는 방법
질문:
C에서는 주어진 문자열이나 char*에 숫자만 포함되어 있는지 확인하는 것이 가능합니까? 그렇다면 첫 번째 숫자가 아닌 문자를 찾는 방법은 무엇이며 두 유형 모두에 유사한 방법이 적용됩니까?
답변:
예, 여러 가지 기술이 있습니다. 문자열이나 char*가 숫자로만 구성되어 있는지 평가합니다. 다음은 두 가지 가능한 접근 방식입니다.
이 메서드는 숫자가 아닌 문자가 처음 나타나는지 확인합니다. 입력. 결과가 std::string::npos이면 모든 문자가 숫자임을 의미합니다.
<code class="cpp">bool is_digits(const std::string &str) { return str.find_first_not_of("0123456789") == std::string::npos; }</code>
이 방법은 std::all_of 알고리즘을 사용하여 입력의 각 문자가 특정 조건(이 경우에는 숫자인지 여부)을 충족하는지 테스트합니다.
<code class="cpp">bool is_digits(const std::string &str) { return std::all_of(str.begin(), str.end(), ::isdigit); }</code>
두 가지 유형 모두에 적용:
위에서 논의한 방법은 std::string 및 char 유형 모두에 활용될 수 있습니다. 그러나 데이터 표현의 일관성을 유지하고 의도하지 않은 동작을 방지하려면 char로 작업할 때 적절한 변환 또는 초기화를 보장하는 것이 중요합니다.
위 내용은 C 문자열 또는 char*에 숫자만 포함되어 있는지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!