C에서 cout 함수는 일반적으로 문자 유형(char, signed char 및 unsigned char)을 출력용 문자로 처리합니다. . 그러나 이러한 동작을 극복하고 문자를 정수로 출력하는 방법이 있습니다.
한 가지 접근 방식은 단항 더하기 연산자( )를 사용하는 것입니다. 이 연산자를 문자에 적용하면 해당 문자가 숫자로 인쇄될 수 있는 유형으로 승격됩니다. 예:
char a = 0xab; cout << +a; // Promotes a to a type printable as a number
이것은 문자 a(171)의 값을 정수로 출력합니다.
또 다른 대안은 숫자를 나타내고 단항 더하기를 정의하는 클래스를 만드는 것입니다. 해당 클래스의 연산자입니다. 이 경우 연산자는 단순히 개체의 값을 반환할 수 있습니다. 예를 들면 다음과 같습니다.
class Number { public: Number(char c) : value(c) {} operator int() const { return value; } private: char value; }; int main() { Number a(0xab); cout << int(a); // Prints the value of a as an integer }
문자를 Number 클래스의 인스턴스로 변환한 다음 정수로 변환하면 문자를 정수로 효과적으로 출력할 수 있습니다.
이러한 접근 방식은 다음을 제공합니다. cout 함수를 사용하여 문자 유형의 출력을 정수로 제어하는 데 더 많은 유연성이 있습니다.
위 내용은 C에서 `cout`을 사용하여 문자를 정수로 출력하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!