Prawidłowo wstaw ujemne liczby całkowite z zerami za pomocą std :: cout

Znalazłem to pytanie już zadane, ale odpowiedź, którą wszyscy dają, jest

std::cout << std::setw(5) << std::setfill('0') << value << std::endl;

co jest dobre dla liczb dodatnich, ale z -5, to drukuje:

000-5

Czy istnieje sposób, aby go wydrukować -0005 lub wymusić cout, aby zawsze drukował co najmniej 5 cyfr (co spowodowałoby -00005), jak to można zrobić z printf?

questionAnswers(1)

yourAnswerToTheQuestion