C++로 작성된 프로그램에서 행렬을 사용하고 있으며이를 인쇄하고 싶습니다. 프로그램에서 행렬은 정수 또는 부호없는 char 유형 중 하나입니다. 이것은 제가 지금 인쇄를하기 위해 사용하고있는 코드입니다.올바른 방법으로 데이터를 인쇄 할 수있는 C++ 템플릿 방법
template<class T>
void print_matrix(const int& num_rows, const int& num_cols, T** M)
{
for (int row = 0; row < num_rows; row++) {
for (int col = 0; col < num_cols; col++) {
std::cout << std::setw(5) << M[row][col];
}
std::cout << std::endl;
}
}
내 문제는 부호없는 문자 행렬의 경우 값이 숫자로 해석되지 않는다는 것입니다. 예를 들어 제로 매트릭스의 경우 출력이 콘솔에 표시되지 않습니다. 두 가지 유형의 행렬을 올바르게 인쇄하는 방법을 알아 내기 위해 템플릿 방식의 형식 정보를 사용할 수있는 방법이 있습니까? 올바른 형식의 문자열로 printf를 사용하는 두 가지 유형의 인쇄 방법을 만드는 데 의존해야합니까?
내가 지금하고있는 일에 효과가있을 것이지만 좀 더 일반적인 해결책이 있는지 궁금해하고 있습니다. 행렬 항목이 부동 소수점 유형 일 수 있다면 무엇을 할 것입니까? – martega
@martega 업데이트되었습니다. – Pubby
감사합니다. 그건 내가 생각하기에 쉽지 않거나 예쁜 것이 아니었다. – martega