>  기사  >  백엔드 개발  >  `std::cout`을 사용하여 C에서 16진수 값을 올바르게 출력하는 방법은 무엇입니까?

`std::cout`을 사용하여 C에서 16진수 값을 올바르게 출력하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-17 14:30:02904검색

How to Properly Output Hexadecimal Values in C   Using `std::cout`?

C에서 16진수 값을 출력하는 방법

C에서 cout 함수를 사용하여 16진수 값을 출력하려고 하면 예상치 못한 결과가 발생할 수 있습니다. 예를 들어, 255에 할당된 정수 a가 있고 16진수 표현("FF")을 인쇄하려는 경우 다음 코드를 사용할 수 있습니다.

int a = 255;
cout << a;

그러나 이는 단순히 10진수 값을 인쇄합니다. 원하는 16진수 표현 대신 "255"입니다. 16진수 값을 올바르게 인쇄하려면 std::hex 조작기를 사용해야 합니다.

#include <iostream>

int main() {
    int a = 255;
    std::cout << std::hex << a;
    return 0;
}

이렇게 하면 의도한 대로 콘솔에 "FF"가 출력됩니다.

추가 서식 옵션

std::hex 조작기는 출력 형식을 제어하기 위한 몇 가지 추가 옵션을 제공합니다. 예를 들어, std::setw 조작기를 사용하여 포함할 선행 0의 수를 지정할 수 있습니다.

#include <iostream>

int main() {
    int a = 255;
    std::cout << std::hex << std::setw(4) << a;
    return 0;
}

이렇게 하면 두 개의 선행 0과 함께 "00FF"가 콘솔에 출력됩니다.

std::uppercase 및 std::nouppercase 조작자를 사용하여 16진수 대소문자를 제어할 수도 있습니다.

#include <iostream>

int main() {
    int a = 255;
    std::cout << std::hex << std::uppercase << a;
    return 0;
}

이렇게 하면 16진수 대문자로 "FF"가 콘솔에 출력됩니다.

위 내용은 `std::cout`을 사용하여 C에서 16진수 값을 올바르게 출력하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.