以整数为值的结构
Structure taking integer as value
#include <iostream>
using namespace std;
struct parts {
int partNumber;
int partPrice;
} parts p;
void main() {
cout << "Enter part number and its price " << endl;
cin >> p.partNumber;
cin >> p.partPrice;
cout << "Part Number " << p.partNumber << "Part Price " << p.partPrice;
}
如果我输入零件号"098"和零件价格"3456",输出为:Part Number 98 Part Price 3456
为什么我的输入"098"输出为"98"?
因为您输入的数字是98
.这是97
上面的数字和99
下面的数字。一个计数。数量。一个抽象的概念。
int
不是一串数字。它不是'9'
后跟'8'
,也不是'0'
后跟'9'
后跟'8'
。
当您考虑数字如何在计算机中存储时,这是完全有意义的:二进制。为什么计算机会将十进制输入转换为二进制,单独存储您输入的前导零的数量?这不是它的作用,因为不需要它。
我通常建议将"部件号"存储为字符串,因为"number"元素只是它在英语中的称呼,并不能真正准确地揭示值是什么:正如您所指出的,您希望它是一串字符。如果不出意外,我经常会遇到带有字母的"零件号"。
如果前导零有意义,你应该将"数字"存储为字符串,而不是整数。 你的"数字"并不是真正的数字——098
的数字与98
的数字相同,但字符串098
与字符串98
不同。
相关文章:
- Qsort() 比较结构体整数的总和
- 如何修改此函数,以便如果函数的参数是特定结构,则返回具有较大整数的结构?
- boost::任何带有结构体和无符号整数
- 如何在 C++11 编译时构建具有递增值的整数成员的结构序列
- 结构上溢出的整数加法
- 如何将结构名称更改为整数?
- 从低到高组织整数并在C++中使用结构
- 结构中的整数、字符和浮点数
- C 中的内存模型:为什么在同一内存位置分配了结构中的两个整数
- C :对矢量进行排序&lt; struct&gt;(结构有2个整数)基于结构的整数之一
- 在指向结构的指针中访问指向整数的指针
- C MPI创建并发送具有字段char [16]和整数的结构数组
- C++ - 泛型结构的成员在分配双精度时给出错误的值(但适用于整数)
- 在英特尔x86体系结构上使用非AVX指令修改xmm整数寄存器值
- 在处理结构模板中的整数时如何修复"X 不是类模板"?
- 可用于存储和管理整数集合的最佳C++数据结构是什么
- 哪种数据结构和设计用于选择最佳整数集
- 为什么使用 24 位整数时结构大小不会改变
- 我想通过scanf将字符和整数输入到结构中
- 以整数为值的结构