将字符串以不同的进制打印
在很多时候,我们需要将结果以不同的形式打印出来,这里我们记录一下相关的操作。
1. 以十六进制输出
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <stdio.h> #include <string.h> void print_hex( char *buffer, int len){ int i; printf( "******************start code**********************************\n" ); for (i = 1; i <= len; i++){ printf( "0x%02X " ,buffer[i-1]); if (i % 16 == 0){ printf( "\n" ); } } printf( "\n" ); printf( "********************end code************************************\n" ); } int main(){ char buffer[128] = "fdakfjakfjalskfj2343215412512543125123513143klj43l12k4j1l2k3412lk4j12lk4j3132" ; print_hex(buffer, strlen(buffer)); } |
结果:
这样,我们可以查看数据在内存中的形态是什么样的?比如:可以查看,int 在内存中的布局?结构体的布局。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构