- 博客(14)
- 收藏
- 关注
原创 14.C 语言数据在内存中的存储:有符号无符号、补码与溢出
本文详解C语言中数据在内存的存储机制,重点区分有符号与无符号整数、补码表示及溢出行为。强调应通过<limits.h>宏获取类型范围,避免依赖平台假设;指出无符号类型转换按模运算回绕,而有符号窄类型超范围赋值结果由实现定义;阐明整数提升对表达式计算的影响,并提醒输出时需匹配提升后的类型,推荐使用unsigned char查看对象字节表示,确保代码可移植性。
2026-10-27 19:05:57
30
原创 13.C 语言变量进阶:初始化、作用域、生命周期与类型转换
本文详解C语言变量的初始化规则、作用域与生命周期,区分自动与静态存储期对象的初始化差异,强调未初始化局部变量不可读取。通过数组部分初始化补零、局部静态变量保留状态等实例,说明作用域与生命周期的区别。重点解析类型转换:整数除法需注意操作数类型、整数提升规则及浮点转整数截断行为,揭示隐式转换对计算结果的影响,并提醒避免未定义行为。
2026-10-27 18:44:43
208
原创 12.C 语言变量入门:声明、基本数据类型与 sizeof
本文系统介绍C语言变量的声明、初始化与赋值,涵盖命名规则、基本数据类型(如char、int、float、bool)及sizeof运算符的使用。重点强调类型大小依赖平台,通过CHAR_BIT、limits.h宏和size_t等工具准确获取类型范围与内存布局,避免死记硬背。提供可运行程序验证数据类型特性,帮助理解变量的本质:名称、类型、值与生命周期。
2026-10-15 19:56:38
122
原创 11.C 语言 printf 打印函数详解:格式说明符、宽度精度与安全输出
本文系统详解C语言printf函数,涵盖格式说明符、参数匹配、宽度精度修饰符及安全输出。重点解析整数、浮点数、字符、字符串与指针的输出方式,阐明类型提升机制(如float→double),澄清%f与%lf在输出中的等效性,强调%Lf用于long double。通过实例演示对齐、截断检测与缓冲区管理,并提醒格式字符串安全风险与常见错误排查,适用于C11/C17标准下的高效、安全编程实践。
2026-10-14 15:21:07
660
原创 10.C 语言常量详解:整数字面量、字符字符串与宏定义
本文详解C语言常量,涵盖整型、浮点、字符与字符串字面量的书写规则与类型特性,解析进制前缀、后缀、转义序列及浮点精度问题。对比#define、const与枚举,阐明宏展开、括号优先级及常量存储机制,澄清字符常量类型、字符串长度与数值转换等易混淆概念,适用于C11/C17标准实践。
2026-10-13 17:49:20
258
原创 09.原码、反码与补码详解:从负数表示到整数范围与溢出
本文详解原码、反码与补码的编码规则,揭示补码如何通过“取模”实现负数统一表示,解决符号处理与加减法统一问题。重点推导补码位权公式与数值范围,阐明补码仅有一个零、负数多一个值的原因,并结合C语言说明有符号/无符号整数、类型转换、整数提升与溢出机制,帮助读者打通二进制计算与程序实现的桥梁。
2026-10-12 15:12:39
506
原创 08.进制转换下篇:二、八、十六进制速转与补码表示
本文系统讲解二、八、十六进制间直接分组转换原理与方法,实现整数与小数的快速互转。通过对照表将每3位(八进制)或4位(十六进制)二进制直接映射,避免十进制中转。重点说明补零规则、前导/尾随零意义、八进制与十六进制互转路径(经二进制中转),并结合C语言进制字面量(0、0x、0b)、格式化输出、字符串解析及补码表示,揭示其在编程与底层调试中的实用价值。
2026-10-09 18:29:30
574
原创 07.进制转换上篇:位权展开与十进制互转
本文系统讲解进制转换原理,阐明二进制、八进制、十进制与十六进制本质为同一数值的不同表达。通过位权展开法实现任意进制转十进制,利用除基取余法和乘基取整法完成十进制与其他进制互转,并揭示有限精度导致的误差来源。内容涵盖整数、小数及混合数转换,结合霍纳法优化计算,适用于计算机基础学习与编程实践。
2026-10-08 21:45:00
428
原创 06.GCC 编译器详解:从单文件编译到多文件工程
本文详解GCC编译器从安装到多文件工程的全流程,涵盖预处理、编译、汇编、链接四阶段,演示gcc hello.c -o hello背后的机制。通过实际案例讲解头文件、格式化输出、警告选项(如-Wall -Wextra)、调试(-g3)与优化(-O0)的合理使用,并深入介绍多文件编译、静态/动态库、Makefile及GDB调试,帮助开发者快速定位“未定义引用”“语法错误”等问题,提升C语言开发效率与代码质量。
2026-10-08 17:20:02
215
原创 05.Vim 进阶:编辑命令、查找替换与多文件操作
本文系统讲解 Vim 进阶编辑技巧:通过“操作符+移动范围”语法实现高效删除、修改、复制粘贴;利用文本对象(如 ci(、diw)精准选区;掌握寄存器机制(如 0、"、+)管理剪贴内容;熟练使用可视模式批量操作;结合查找替换、撤销重做(u、.)、多文件缓冲区与分屏,全面提升代码编辑效率。
2026-09-24 11:23:45
593
原创 04.Vim 入门:从模式切换、文件保存到高效移动
本文系统介绍 Vim 入门核心:掌握四种模式(普通、插入、可视、命令行)是关键。通过 vim 文件名打开文件,使用 i 进入插入模式编辑,按 Esc 返回普通模式后,用 :wq 保存退出。重点学习基础移动命令(如 hjkl、w/b/e、G/gg)与安全保存技巧(:wq、:x、:q!)。结合行号显示、语法高亮等基础配置,建立高效编辑习惯,为深入使用奠定基础。
2026-09-23 15:37:32
336
原创 03.Linux 文件系统与常用命令入门:从路径导航到文件管理
本文从 Linux 的树形文件系统讲起,说明根目录以及 /home、/etc、/usr、/dev、/var、/tmp 等常见目录的用途,并解释绝对路径、相对路径和家目录的区别。文章按实际操作顺序介绍 pwd、cd、ls、mkdir、touch、cat、rm、cp、mv 等命令,通过一个完整练习完成目录创建、文件编辑、复制、移动和重命名,最后总结权限错误、路径错误和误删文件的排查方法。
2026-09-21 20:27:24
228
原创 02.从冯诺依曼体系到 C 程序编译运行:初学者必须理解的计算机基础
本文从冯诺依曼体系出发,介绍运算器、控制器、存储器、输入设备和输出设备的基本作用,并进一步区分寄存器、内存和外存。文章还梳理机器语言、汇编语言和高级语言的发展,解释编译型语言与解释型语言的差异,最后通过 GCC 命令展示 C 程序从预处理、编译、汇编到链接的完整过程。
2026-09-21 15:00:00
242
原创 01.从零搭建 Ubuntu C 语言开发环境:VMware、Ubuntu 与 Windows 共享目录
本文以 VMware Workstation 和 Ubuntu 22.04 LTS 为例,完整介绍 C 语言 Linux 开发环境的搭建过程,包括虚拟机创建、Ubuntu 安装、Windows 与 Ubuntu 共享文件夹配置、共享目录挂载、`/etc/fstab` 自动挂载以及 GCC 编译环境验证。文章同时整理了常见故障和排查方法,适合 Linux 与 C 语言初学者入门。
2026-09-20 20:52:43
328
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅