UL 和 L 的核心区别在于符号位(正负号)的处理。
L:将常量定义为 long (有符号长整型),最高位是符号位,可表示正负数。
UL:将常量定义为 unsigned long (无符号长整型),没有符号位,所有位都用来表示数值大小。
后缀 (L)类型是 : signed long 符号位 -2,147,483,648 到 2,147,483,647 , 典型应用场景: 定义可能为负数的值,如-100L;或确保数值范围达到32位的正数,如24000000L。
后缀UL 类型是 :unsigned long 数值位 0 到 4,294,967,295 , 典型应用场景: 位掩码、移位操作(如 1UL << 31)、硬件寄存器值等所有需要确保无符号的场景。
除了 UL 和 L,这里也列出其他常用后缀供你参考:
后缀 含义
U / u unsigned int (无符号整型)
L / l long (长整型)
UL / ul / LU unsigned long (无符号长整型)
F / f float (单精度浮点型)
LL / ll long long (长长整型)
ULL unsigned long long (无符号长长整型)
本文摘自[找寻记忆]网站,原文链接“https://www.liloufan.com/jishu/2026/04/17251.html”转载请保留出处.
单片机中L和UL的区别
PS: 大家余生也别多多指教了,都TM爱咋过咋过吧!BY:梦梵FLY-2023-03-23