코드는 내가 지금까지이 작업을 수행하기 위해 사용되어왔다 0의 패딩과 최소 길이 (8) 코드를 16 진수로 입력 uint32_t
의 변수를 인쇄하는 것이 필요하다 :uint32_t에서 16 진수를 인쇄하는 방법은 무엇입니까? 내가 작업 한
printf("%08lx\n",read_word(address));
여기서 read_word는 uint32_t 유형을 반환합니다. jx, llx 등의 포맷을 사용하지 않았지만 사용할 수있는 올바른 포맷이 있습니까?
는편집 : 나는 문제를 발견
내가 통과하고있는 무슨에있다. read_word 함수는 uint32_t 벡터에서 값을 반환합니다. 이것이 육각형을 넣을 때 문제가되는 것 같습니다. 이것은 참조/값 문제에 의한 전달이며 수정 사항은 무엇입니까?
read_word 기능 :
uint32_t memory::read_word (uint32_t address) {
if(address>(maxWord)){
return 0;
}
return mem[address];
}
MEM 감속 :
std::vector<uint32_t> mem=decltype(mem)(1024,0);
[This ''헤더 파일 참조] (http://en.cppreference.com/w/c/types/integer)가 도움이됩니다. 끝에 [포맷 매크로] (http://en.cppreference.com/w/c/types/integer#Format_macro_constants)를 확인하십시오. –
@Someprogrammerdude 감사합니다. 설명서를보고 작동 여부를 확인합니다. PRIx32를 패딩으로 사용하는 방법을 모르십니까? – Dave
형식을 지정하기 만하면됩니다. 차이 없음. –