c语言进阶
2026/8/6 1:38:53 网站建设 项目流程

共用体(联合体)

  1. 结构体:每个成员拥有独立内存空间
  2. 共用体:所有成员共用同一块内存空间,同一时刻只能使用其中一个成员

大小端

  • 小端:低地址存低位数据,高地址存高位数据(x86、Ubuntu默认)
  • 大端:低地址存高位数据,高地址存低位数据(网络字节序)

枚举

  1. 枚举常量本质是 int 类型
  2. 第一个枚举值默认等于0,后面依次自增1

位运算

位运算符

符号 作用
& 按位与
| 按位或
^ 按位异或
~ 按位取反
<< 左移

右移

常用位运算模板

  1. 将第n位置1
    num |= (1 << n);
  2. 将第n位置0
    num &= ~(1 << n);
  3. 异或交换两个变量(不使用临时变量)
    a = a ^ b;
    b = a ^ b;
    a = a ^ b;

C程序内存分区

  1. 文本段(.text):存放代码、函数指令,只读
  2. 只读数据段(.rodata):字符串常量
  3. 数据段(.data):已经初始化的全局变量、静态变量
  4. BSS段(.bss):未初始化全局/静态变量,程序运行前自动清零
  5. 栈区(stack):局部变量,函数自动申请释放,生命周期随函数
  6. 堆区(heap):程序员手动管理
  • malloc 申请内存
  • free 释放内存
  • 忘记free会造成内存泄漏

堆区使用规则

  1. 堆内存需要手动申请、手动释放
  2. 使用完毕必须调用 free 归还空间
  3. 不释放会产生内存泄漏,程序长期运行会占用越来越多系统内存

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询