当前位置: 首页 > news >正文

【C语言基础】那些你可能不知道的C语言“潜规则”

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨
📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】
📢:文章若有幸对你有帮助,可点赞 👍 收藏 ⭐不迷路🙉
📢:内容若有错误,敬请留言 📝指正!原创文,转载请注明出处

文章目录

  • 什么是UL?
  • C语言还有哪些后缀
  • U08、U16、U32
  • h\b\d\o
  • inc和src文件夹


什么是UL?

在C语言中,UL 是一个后缀,用于表示无符号长整型(unsigned long)。UL 的作用是告诉编译器将一个整数常量指定为无符号长整型。
例如,使用 100UL 表示一个无符号长整型的整数常量。UL 表示unsigned long,确保编译器将该常量解释为无符号的长整型而不是有符号的长整型。
UL 的使用通常在需要显式指定无符号长整型时,比如与无符号长整型变量进行计算或者与其他无符号整数常量进行比较等。
下面是一些示例:

unsigned long num1 = 100UL;   // 使用UL后缀来指定num1为无符号长整型
unsigned long num2 = num1 + 200UL;   // 使用UL后缀来指定200为无符号长整型unsigned long num3 = sizeof(unsigned long) * 8UL;   // 使用UL后缀来指定8为无符号长整型

需要注意的是,在使用UL后缀时,UL 字母可以是大写或小写,效果是一样的。UL 后缀只是为了明确地告诉编译器数据类型,可以根据实际需要选择使用。

C语言还有哪些后缀

在C语言中,还有一些其他的后缀用于表示不同的数据类型。以下是一些常用的后缀:
1. U 表示无符号整型(unsigned),比如使用 10U 表示无符号整数常量。
2. L 表示长整型(long),比如使用 100L 表示长整数常量。
3. LL 表示长长整型(long long),比如使用 100LL 表示长长整数常量。
4. F 表示单精度浮点数(float),比如使用 3.14F 表示单精度浮点数常量。
5. UL, ULL, LU, LLU 用于表示无符号长整型(unsigned long)或无符号长长整型(unsigned long long),比如使用 100UL 表示无符号长整数常量。

这些后缀用于在整数或浮点数常量中显式指定其数据类型,以确保编译器正确地解析和处理这些常量。在没有指定后缀的情况下,编译器会根据上下文和默认规则进行推断。
需要注意的是,后缀的大小写是不敏感的,比如 u 和 U 是等效的, f 和 F 是等效的。但是,为了代码可读性和一致性,建议尽量保持一致,并使用大写后缀。
请注意,不同的数据类型可能有不同的后缀,具体使用哪些后缀应参考特定编程语言的规范和编译器的要求。

U08、U16、U32

U08对应b,U16对应w,U32对应d。含义:
在计算机领域中,U08、U16 和 U32 是无符号整数的位数表示。这些位数表示了整数的存储空间或大小。
- U08 表示无符号 8 位整数,也即一个字节大小。通常用于表示范围在 0 到 255 的整数。
- U16 表示无符号 16 位整数,也即两个字节大小。通常用于表示范围在 0 到 65535 的整数。
- U32 表示无符号 32 位整数,也即四个字节大小。通常用于表示范围在 0 到约 42 亿的整数。
另外,你提到的 b、w 和 d 是一种常见的表示方法,特指在汇编语言中用于标识字节(byte)、字(word)和双字(double word)的大小:
- b 表示字节大小(8 位)。
- w 表示字大小(16 位)。
- d 表示双字大小(32 位)。
因此,U08 可以对应于 b,U16 可以对应于 w,U32 可以对应于 d,这种对应关系主要用于指示数据类型在汇编语言中的大小和操作。

h\b\d\o

hexadecimal,缩写hex:翻译为十六进制
binary,缩写bin:二进制
decimalism,缩写dec:十进制
octonary,缩写Oct:八进制

inc和src文件夹

inc文件夹(或include文件夹);inc文件夹(或include文件夹)

http://www.lryc.cn/news/161426.html

相关文章:

  • android framework之Applicataion启动流程分析(三)
  • 使用Scrapy框架集成Selenium实现高效爬虫
  • Maven 和 Gradle 官方文档及相关资料的网址集合
  • docker概念、安装与卸载
  • elasticsearch访问9200端口 提示需要登陆
  • 【深度学习】 Python 和 NumPy 系列教程(一):Python基本数据类型:1、数字(整数、浮点数)及相关运算;2、布尔值
  • 无swing,高级javaSE毕业之贪吃蛇游戏(含模块构建,多线程监听服务)
  • HDD-FAT32 ZIP-FAT32 HDD-FAT16 ZIP-FAT16 HDD-NTFS
  • 王道数据结构编程题 二叉树
  • 登录怎么实现的,密码加密了嘛?使用明文还是暗文,知道怎么加密嘛?
  • Nginx和Tomcat负载均衡实现session共享
  • 【算法题】210. 课程表 II
  • “数据类型不一致”会走索引吗?
  • Leetcode 1572.矩阵对角线元素之和
  • [PG]将一行数据打散成多行数据
  • 二蛋赠书一期:《快捷学习Spring》
  • Threejs汽车展厅
  • LeetCode:207. 课程表、210. 课程表 II(拓扑排序 C++)
  • 如何使用组件
  • Android 13.0 Launcher3定制之双层改单层(去掉抽屉式二)
  • 对卷积的一点具象化理解
  • NV12数据格式转H265编码格式实现过程
  • ubuntu 22.04 深度学习环境配置
  • 支付宝小程序集成mqtt兼容IOS和安卓
  • 在Qt5中SQLite3的使用
  • 使用Docker部署debezium来监控 MySQL 数据库
  • 百度低质量站点怎么办?解决百度低质量站点的方法和工具
  • MSOS604A是德科技keysight MSOS604A示波器
  • 春秋云镜 CVE-2016-0785
  • 入门ElasticSearch :为什么选择ES作为搜索引擎?