2010-08-20 8 views
7

부호없는 int의 앞에 0이 붙는 8 자리 긴 문자열을 지정하고 싶습니다.부호없는 int의 형식을 8 자리 16 진수로 지정하는 방법은 무엇입니까?

unsigned int number = 260291273; 
    char output[9]; 
    sprintf(output, "%x", number); 
    printf("%s\n", output); // or write it into a file with fputs 

인쇄 "f83bac9를",하지만 "0f83bac9"를 원하는 :

이것은 내가 지금까지있는 것입니다. 서식을 어떻게 얻을 수 있습니까?

+1

나는 downvote하지 않았지만, 매뉴얼 페이지를 살펴봄으로써 간단히 대답 할 수있는 질문에 대한 것이라고 상상할 수있다. –

답변

9

형식 문자열로 "% 08x"를 사용하십시오.

5

0과 원하는 자릿수를 % 사이의 형식 유형으로 지정하여 제로 패딩을 사용할 수 있습니다. 8 자리 (적어도), 당신은 %08x 사용하는 거라고와 16 진수에 대한 예를 들어

:

printf("%08x", number); 

출력 (number 경우 500) :

000001f4

관련 문제