如果 x < 10,则添加前导 0 并将其存储为 int
Add leading 0 if x < 10 and store it as an int
我正在开发一个小型的"Time"函数库,只是为了了解有关如何使用C++和函数的更多信息。
我有一个叫做Time(int hh, int mm, int sec)
的函数
如果用户输入Time(11, 9, 14)
,我想要 我想将此值存储在内存中,作为以后使用hh = 11; mm = 09; sec = 14;
。
我知道,如果我使用cout
我本可以使用cout << setw(2) << setfill('0') << mm << endl;
但是现在我想直接将值存储为 int,我该怎么做?
我试过time = (tt > 10) ? 0 + mm : mm;
但我想这就像做基本的加法 0+9 = 9。
不要。
数字就是数字。
您正在存储值"九"。这可以写成十进制文字9
,或八进制文字010
,或十六进制文字0x09
,或十六进制文字0x0000000009
,或英语"九",或法语"neuf"......
...或者作为格式化的、零填充的字符串"09"
这在C++中是可能的,但完全没有意义,因为你牺牲了对算术的直接访问,失去了价值验证,现在必须将其转换回数字才能用它做任何有趣的事情。
您要查找的值已经存在(实际上在内部存储为二进制位序列(。信息"将其零填充为两个十进制数字"不是值的一部分,而是屏幕上可能表示的一部分。
只需将9
存储在int
中,并在要输出时对其进行格式化即可。
相关文章:
- 如何在cpp.中使用协议缓冲区存储大缓冲区/数组(char/int)
- 在c++中获取两个大int,并将它们存储在数组中
- 在 std::无符号字符的向量处存储 int 的十六进制表示形式
- 如果 x < 10,则添加前导 0 并将其存储为 int
- 如何读取 TXT 文件并仅将 int 存储在 C 中
- 如何在函数中将字符串和分数存储为(Int 或 float)
- 如何声明一个必须在C++中同时存储int和char值的2D数组
- 如果char可以在C++中存储数字,为什么我们需要int
- 如果我在 C++ 中为 int 提供双精度,输入缓冲区中存储了什么?
- 我应该使用无符号字符而不是 int 来存储永远不会大于 255 的值吗?
- 我正在编写一个代码来将 int 数组存储在文件中,然后用 c++ 检索它,但是检索第一项是假值,我该如何解决这个问题?
- unordered_set是否适合存储矢量<int>元素的数据结构?如果是这样,我将如何实现哈希函数?
- 什么是在C 中存储结果INT*的最佳数据类型
- char*中存储的返回int值(0-255)给出了负值
- 将字符指针按顺序存储在 map 中 std::map<char*, int> mymap。将其存储为字符或字符串不是一个选项
- 如何在文件中节省空间地存储和检索 std::vector<int> 值
- 如何将char和int存储在同一个变量中
- c++int存储为char*转换中的字符,无需任何API
- Vector将int存储为ascii码
- c++11将数据从一个int*存储到另一个int