stringstream删除前导0

时间:2018-02-23 13:32:13

标签: c++ stringstream

在以下代码中:

stringstream ss;
int a = 0;
ss << str;
ss >> a;
cout << a;

如果str = "05"stringstream删除前导0,则打印5。 怎么可以避免这种情况?

1 个答案:

答案 0 :(得分:4)

您正在将字符串转换为int。 int没有任何前导零的概念,它只是一个数字。如果要在流中打印前导零,可能会对setfillsetw操纵符感兴趣。如果cout << setw(2) << setfill('0') << a; 只有一位数,则以下代码将打印前导0。

{{1}}