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

学习C语言——体会计算机中的0和1

/*
    把hello隐写入一个整型数组,这个小程序可以考察是否清楚数据在内存中存储的具体细节。
    具体的说,int类型在小端机器上的存储方式是高位在高地址,低位在低地址,从视觉习惯上和我们的日常书写习惯相反;
    char类型占用一个字节的存储空间,它不区分大端和小端,是顺序存储的,和阅读顺序相同,当
我们根据这个规律进行转换后,就可以把一段字符串写入一个数组,当我们以字符串输出的时候,就可以看到隐藏在整型数组中的字符。
    这个功能扩展后,可以让一个整型数组存储任意的字符串。
    同时,我们也会想到,如果我把字符串以无符号整型的方式,每4个字节读取出来,组成一个数组,是否就完成了这种隐写呢?
    在现在的MySQL数据库字符编码中,utf8mb4是默认字符集,我想选用这个字符集,除了能够包含完整的世界范围内的字符外,还带来了一种处理起来的方便性,那就是可以把它当作一个整型数来看待。处理起来更加方便。
*/

#include <stdio.h>int main(int argc, char** argv){int a[3][3][4]={0x6c6c6568,0x6f,'\0','l','o','\0',0,2,3,3,3,0,4,4,4,4,5,65,5,5,6,6,6,0,7,7,7,7,8,8,8,'h','e','l','l','o'};char* str=(char*)a;int* p=(int*)a;for(int i=0;i<3*3*4;i++){printf("%x ", *(p+i));}for(int i=0;i<3;i++){printf("%s\n", str);}return 0;
}

       给大家留一个问题,如果数组中的第三个整型数不是‘\0’,输出会有问题吗,为什么?

如果你知道答案,欢迎给我留言,点赞,一起探讨有趣的事情。

相关文章:

  • [ 云计算 | Azure 实践 ] 在 Azure 门户中创建 VM 虚拟机并进行验证
  • 一篇文章了解Flutter Json系列化和反序列化
  • Python Django Suit:构建现代化的Django后台管理
  • svg文本转为对应图片的base64编码
  • 高防CDN在游戏服务商中的关键意义
  • crmeb v5新增一个功能的完整示例记录
  • 【迅搜09】索引管理(二)增删改操作
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • Debezium发布历史08
  • AIGC(生成式AI)试用 15 -- 小结
  • 风速预测(五)基于Pytorch的EMD-CNN-LSTM模型
  • Android动画
  • 【跨域】同源策略、跨域解决
  • 什么是PHP中的数组迭代器?
  • 2043杨辉三角(C语言)
  • 《深入 React 技术栈》
  • 【Amaple教程】5. 插件
  • C学习-枚举(九)
  • Docker 笔记(2):Dockerfile
  • DOM的那些事
  • Effective Java 笔记(一)
  • HTTP请求重发
  • If…else
  • Invalidate和postInvalidate的区别
  • Material Design
  • passportjs 源码分析
  • PAT A1092
  • php面试题 汇集2
  • python学习笔记 - ThreadLocal
  • React as a UI Runtime(五、列表)
  • Spring Boot快速入门(一):Hello Spring Boot
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • 当SetTimeout遇到了字符串
  • 山寨一个 Promise
  • 深度学习中的信息论知识详解
  • 世界上最简单的无等待算法(getAndIncrement)
  • 算法之不定期更新(一)(2018-04-12)
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • ​secrets --- 生成管理密码的安全随机数​
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • !!Dom4j 学习笔记
  • #define
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (C语言)strcpy与strcpy详解,与模拟实现
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (超详细)语音信号处理之特征提取
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (南京观海微电子)——COF介绍
  • (原)本想说脏话,奈何已放下
  • (转)scrum常见工具列表
  • .apk 成为历史!
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET Core WebAPI中封装Swagger配置
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...