我读了一个整数:
is >> myInteger;
现在我想知道读了多少位数(我说的是可能的前导零)。我怎么能这样做?
答案 0 :(得分:5)
你可以:
将值作为字符串获取,然后单独解析,无论您希望如何(检查长度,计数零等)。
为此使用is.tellg;请记住,tellg会给你缓冲位置,而不是那些位置的位置(它可能是空格字符或零)
使用is.get逐字符读取缓冲区,然后根据需要处理值。
答案 1 :(得分:2)
在流式传输整数之前,您可以获得is.tellg()的值,然后再次获取它并找到差异。
编辑:虽然正如评论中所指出的那样,只会告诉你流消耗了多少元素,其中一些可能是空格。