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

【C 语言基础操作】位操作和 gdb 调试

一、位运算详解

1. 位运算符速查表

& 按位与 全1为1,有0为0 | 按位或 全0为0,有1为1 ^ 按位异或 相异为1,相同为0 ~ 按位取反 1取反为0,0取反为1 << 按位左移 按位左移,低位补0 num << n <--> num * 2^n >> 按位右移 按位右移,高位补符号位 num >> n <--> num / 2^n

2. 位运算的典型应用

(1)指定 n 位置 1
1010 0000 | 0000 1000(1 << 3) = 1010 1000 num = num | 1 << n; // << 优先级高于 |
(2)指定 n 位置 0
1010 1010 & 1111 0111(~(1 << 3)) = 1010 0010 num = num & ~ (1 << n); // ~ 优先级高于 <<,高于 &
(3)两数交换(不使用中间变量)
// 按位异或方式 a = a ^ b; b = a ^ b; // b = (a ^ b) ^ b = a ^ 0 = a a = a ^ b; // a = (a ^ b) ^ a = 0 ^ b = b a ^ a == 0 a ^ 0 == a // 求和方式 a = a + b; b = a - b; // b = (a + b) - b = a a = a - b; // a = (a + b) - a = b

3. 位运算符的优先级

~ 高于 << 高于 >> 高于 & 高于 ^ 高于 |

二、程序调试方法

1. 打印调试

程序运行过程中打印输出: printf("num = %d\n", num);

2. gdb 调试

gdb 是 GNU 提供的 Linux 下的代码调试工具。

(1)使用 gdb 调试逻辑错误;

(2)使用 gdb 调试段错误。

r

where 定位段错误的位置。

1. 编译程序:-g 选项,允许使用 gdb 调试 gcc main.c -g 2. 使用 gdb 调试程序: gdb ./可执行程序 gdb ./a.out 3. gdb 指令 l 列出源代码 b+行号 在指定行打断点 r 运行程序 n 执行下一条代码 p+变量名 查看变量值 q 退出 gdb s 跟进函数
http://www.jsqmd.com/news/1371319/

相关文章:

  • 百度搜索技术栈解析与高并发架构设计
  • Spring Boot交通违章管理系统开发实践
  • 贵州的企业定制酒哪家售后靠谱? - 中媒介
  • 山西橱柜定制工厂哪家**?山西起辰智能家居有限公司(山西运营中心) - 品牌优推
  • 广州跨境电商公司注册办理全解:2026 新规细则、平台入驻合规与实操避坑指南 - GrowthUME
  • 二进制与进制转换:从物理基础到编程实战的核心指南
  • 会话恢复技术解析:从tmux到codexx,如何找回丢失的命令行工作状态
  • OpenClaw智能体框架提示词8层装载机制深度解析与实战排错指南
  • 《合肥请家政怎样才算“真性价比”?2026最新价格拆解与防坑指南》
  • Ubuntu 20.04 镜像命名解析与安装实战:从新手到精通的完整指南
  • 2026年双碳目标适配:3个占地紧凑废气处理焚烧装置工程案例优选 - geo交流
  • JAVA小白初学习——JAVA概述
  • 从驯服到引导:基于吸引子工程的复杂系统控制新范式
  • 预算够的话买什么高端清洁美容仪靠谱? - 中媒介
  • Rocky Linux 10安装MySQL 9.7全攻略:从零配置到安全优化
  • Windows下Boost库编译指南:从源码构建到项目集成
  • **函数依赖(Functional Dependency, FD)** 和 **候选键(Candidate Key)** 是关系数据库理论中的核心概念
  • 深圳产业园与传统工业园大不同?一文揭秘两者核心区别!
  • 计算机单片机毕设实战-基于 STM32 的光敏人体传感智能照明控制器研发 基于 STM32 单片机的环境光阈值可调智能台灯设计(018302)
  • 2026年河北资质齐全车库顶板排水板厂家直销怎么挑?这份优选指南值得收藏 - geo交流
  • AI编程助手Claude Code深度评测:算法、API、安全与业务逻辑四大翻车场景分析
  • 从设备连接到持续运营,鹤梦云打造宠物行业智能看护数字化解决方案
  • SpringBoot兼职招聘系统开发实践与架构设计
  • 金蝶云苍穹插件开发:事件源与事件机制深度解析与实战
  • 类型驱动开发:从类型设计到业务逻辑的编译期保障
  • 门控函数SHS阈值与调制机制解析
  • 2026年小型手持喷砂机正规资质甄选指南:从资质核验到场景适配一次讲清 - geo交流
  • 农业用深井泵哪个品牌性价比高 - 中媒介
  • 从零实现Python异步消息总线:多Agent系统通信核心原理与实践
  • Godot PCK文件深度解析:从资源打包到热更新实战指南