可以通 🦄 过以下方式区分长 🐡 整型常量和短整型常量:
1. 后缀标 🦟 识(C 语言):
长整型常量以 🌲 "L" 或 "l" 结尾,例如:L
短整型常量 🌷 没有后 🐞 缀标识,例如:12345
2. 范 🌾 围:
短整 🐡 型常量 🍁 的 🐶 范围通常为 32,768 到 32,767
长整型 🐘 常量的范围通 💐 常为 2,147,483,648 到 🌾 2,147,483,647
3. 赋值给不同数 🐒 据类型变量 🌲 时:
将长整型常量赋值给短整型变量时,会自动截断为短整型范围并可能导致数 🌸 据丢失 🐴 。
将短整型常量赋值给长整型变量时,会 🌵 自动扩展为长整型范 🐕 围不会造成问题。
4. 使用 🐕 类型转换运算符:
可以使用类型转换运算符 (long) 将短整型常量转换 🐦 为长整型常量,例如: (long)12345
不需要将长整型常量转换 🦄 为 🌴 短整型常量,因为编译器会 🦢 自动截断。
注意:对于 C++ 语言 🐕 ,区分长整型常量和短整型常量的方式略有不同。C++ 中引入了新的关键字 long long,用于 long 表。示比更大的整 🦈 型常量
以大写字母 "L" 或小写 🐟 字母 "l" 为后 🦢 缀。
范围 🐼 :263 至 🦉 263 1。
短整型常量没 🐶 有 🌸 后缀。
范 🍀 围 🐴 :215 至 🌴 215 1。
区别| 特 🐦 征 | 长 | 整 |型短整型
||||| 后 🐱 缀 🐺 | L/l | 无 💐 |
| 范围 🐴 | 263 至至 🌼 263 1 | 215 215 1 |
| 存储 🦉 空间 | 8 字节字节 | 2 |
举例长 🌲 整型常量:L
短整型常量 🐠 :12345
注意:在 Java 中,整型常 🦆 量默 🐈 认是 int 类 💮 ,型范围为 231 至 231 1。
如果常量值超过 int 范围,则需要使用长整 🦈 型常量。
如果常量 🐶 值在短整型范围内,可,以使用 🐠 短整型常量以节省存储空间。
长 ☘ 整 ☘ 型 🐝 (long)
有符 🌾 号范围 🐒 : 2^63 (9,223,372,036,854,775,808) 至 🕸 2^631 (9,223,372,036,854,775,807)
无 🍀 符号 🪴 范 🌾 围: 0 至 2^641 (18,446,744,073,709,551,615)
短 🪴 整型 🐳 (short)
有符号 🐈 范 🦅 围 🐧 : 2^15 (32,768) 至 2^151 (32,767)
无符号 🐧 范围 🍀 : 0 至 ☘ 2^161 (65,535)
注意:范围 🦊 因编译器和系 🦟 统而异 🌺 。
有符号范 🐟 围包 🌵 括负数和正数。
无符号 🐶 范围 🐬 仅包括正数。
短 🐡 整型是长整型的子集。
判断长整 🐛 型常量的方法 🌸 :
以'L'或'l'后缀结 🦍 尾:例如 🦊 ,L,0xabcdefL
带 🕸 有'_'分 🪴 隔符 🐈 :例如,_L,0xabcdef_123456L
以'U'或'u'后缀 🕊 结尾(无符号长 🦊 整型):例如,UL,0xabcdefU