char 유형의 배열을 만들었습니다. 그 배열에서 정수를받습니다. 0, 1 또는 그 문제에 대한 모든 것. 이 질문은 배열에 저장된 값의 합계를 요청합니다. 그러나 배열을 char 유형으로 선언했기 때문에 0은 '0'처럼 허용됩니다. 그래서, 어떻게 '0'을 0으로 변환해야합니까? 또한 10 (10)보다 큰 문자도 정수로 변환 할 수 있습니까?
입력은 정수 문자열입니다. 00012312와 같습니다. 또한이 일반적인 문자 배열 방법과 별도로 이러한 숫자를 입력하는 더 좋은 방법이 있습니다. 도움을 주셔서 미리 감사드립니다.
이와 같은 문자 배열이있는 경우
char a[] = "00012312";
그러면 다음과 같은 방법으로 합계를 찾을 수 있습니다.
int sum = 0;
for ( char *p = a; *p; ++p ) sum += *p - '0';
배열의 내용을 정수로 변환해야하는 경우 다음과 같이 작성할 수 있습니다.
int x = ( int )std::strtol( a );
다음과 같습니다.
int x = std::atoi( a );
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다