学习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’,输出会有问题吗,为什么?

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/226457.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos8stream 升级 sqlite3 ,解决 SQLite 3.27 or later is required (found 3.26.0).

服务器环境是centos8stream, 默认的sqlite是 3.26 &#xff0c;因此&#xff0c;需要升级。 sqlite官网&#xff1a;SQLite Download Page 1.从官网下载最新源码包 cd /opt/ wget https://www.sqlite.org/2023/sqlite-autoconf-3440200.tar.gz tar xvf sqlite-autoconf-344020…

TC397 EB MCAL开发从0开始系列 之 [11.3] SPI配置实战 - 使用SPI Async异步EB配置W25Q32

一、SPI配置1、配置目标2、目标依赖2.1 硬件使用2.2 软件使用2.3 新增模块3、EB配置3.1 配置讲解3.2 模块配置3.2.1 MCU配置3.2.2 PORT配置3.2.3 SPI配置3.2.3.1 General配置3.2.3.2 SpiMaxChannel/Job/Sequence配置3.2.3.3 Spi

Linux的权限(二)

目录 前言 文件类型和访问权限&#xff08;事物属性&#xff09; 补充知识 文件类型 文件操作权限 修改文件权限 chmod指令 文件权限值的表示方法 字符表示方法 8进制数值表示方法 权限有无带来的影响 修改文件角色 chown与chgrp指令 目录的rwx权限 补充知识 …

基于net6的zmq调试工具

0.前言 最近在做CS架构的上位机控制软件&#xff0c;服务端和客户端是通过zmq进行通讯的&#xff0c;网上现有的工具都是tcp、串口的调试工具&#xff0c;一直没有找到一个合适的zmq调试工具。就使用C#语言开发了这个简易的zmq调试工具&#xff0c;项目地址ZmqDebuggerTool。 …

小程序禁止滚动穿透,page-meta

使用场景&#xff1a;页面中有弹窗&#xff0c;并且弹窗里数据超过弹窗的高&#xff0c;要在弹窗做滑动操作&#xff0c;当弹窗滑动到底部的时候&#xff0c;继续划动会导致底层页面的滚动&#xff0c;这就是滚动穿透。这种情况对于体验感很不友好。 解决办法&#xff1a;使用p…

机器学习scikit-learn实现

机器学习scikit-learn实现 scikit-learn简介scikit-learn API机器学习基础机器学习算法机器学习工作流程监督学习无监督学习数据集 (Dataset)特征 (Features)标签 (Labels)模型 (Model)训练 (Training)验证 (Validation)测试 (Testing)损失函数 (Loss Function)优化算法 (Opti…

day03-报表技术POIEasyPOI

1、了解百万数据的导入 1.1 需求分析 使用POI基于事件模式解析案例提供的Excel文件 1.2 思路分析 **用户模式&#xff1a;**加载并读取Excel时&#xff0c;是通过一次性的将所有数据加载到内存中再去解析每个单元格内容。当Excel数据量较大时&#xff0c;由于不同的运行环境…

ArrayList与LinkLIst

ArrayList 在Java中&#xff0c;ArrayList是java.util包中的一个类&#xff0c;它实现了List接口&#xff0c;是一个动态数组&#xff0c;可以根据需要自动增长或缩小。下面是ArrayList的一些基本特性以及其底层原理的简要讲解&#xff1a; ArrayList基本特性&#xff1a; 动…

少儿编程:是智商税还是未来必备技能?

在当今这个科技日新月异的时代&#xff0c;编程已经成为了一项重要的技能。越来越多的家长开始关注少儿编程教育&#xff0c;希望孩子从小就能掌握这项技能。然而&#xff0c;也有一部分人认为少儿编程是一种“智商税”&#xff0c;认为这种教育方式并不适合所有孩子。那么&…

初识Pandas函数是Python的一个库(继续更新...)

学习网页&#xff1a; Welcome to Python.orghttps://www.python.org/https://www.python.org/https://www.python.org/ Pandas函数库 Pandas是一个Python库&#xff0c;提供了大量的数据结构和数据分析工具&#xff0c;包括DataFrame和Series等。Pandas的函数非常丰富&…

Java泛型(1)

我是南城余&#xff01;阿里云开发者平台专家博士证书获得者&#xff01; 欢迎关注我的博客&#xff01;一同成长&#xff01; 一名从事运维开发的worker&#xff0c;记录分享学习。 专注于AI&#xff0c;运维开发&#xff0c;windows Linux 系统领域的分享&#xff01; 本…

ubuntu22.04 怎么查看系统日志

在 Ubuntu 22.04 中&#xff0c;查看系统日志可以通过多种方法来实现&#xff0c;这取决于你想要查看的日志类型。以下是一些常见的方法&#xff1a; 使用日志文件 Ubuntu 使用 systemd 作为其初始化系统&#xff0c;它提供了 journalctl 命令来查看日志。要查看系统日志&…

基于FFmpeg,实现播放器功能

一、客户端选择音视频文件 MainActivity package com.anniljing.ffmpegnative;import android.Manifest; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; import android.database.Cursor; import android.net.Ur…

【每日一题】统计区间中的整数数目

文章目录 Tag题目来源解题思路方法一&#xff1a;平衡二叉搜索树 写在最后 Tag 【平衡二叉搜索树】【设计类】【2023-12-16】 题目来源 2276. 统计区间中的整数数目 解题思路 方法一&#xff1a;平衡二叉搜索树 思路 用一棵平衡二叉搜索树维护插入的区间&#xff0c;树中的…

Redis常用内存淘汰策略?

从淘汰范围来说可以分为不淘汰任何数据、只从设置了到期时间的键中淘汰和从所有键中淘汰三类。而从淘汰算法来分&#xff0c;又主要分为 random&#xff08;随机&#xff09;&#xff0c;LRU&#xff08;最近最少使用&#xff09;&#xff0c;以及 LFU&#xff08;最近最不常使…

Linux--LAMP 平台部署及应用

5.1 LAMP平台概述 LAMP架构是目前成熟的企业网站应用模式之一&#xff0c;指的是协同工作的一整套系统和相关软件&#xff0c;能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词&#xff0c;具体包括Linux操作系统&#xff0c;Apache 网站服务器、MySQL数据库服务器&…

什么是PHP中的魔术方法?

在PHP中&#xff0c;魔术方法&#xff08;Magic Methods&#xff09;是一些特殊的方法&#xff0c;它们具有双下划线&#xff08;__&#xff09;作为前缀&#xff0c;用于在对象的生命周期中执行一些特定的操作。这些方法不需要直接调用&#xff0c;而是由PHP在特定的情况下自动…

【人工智能 | 知识表示】问题规约法 谓词/符号逻辑,良好的知识表示是解题的关键!(笔记总结系列)

&#x1f935;‍♂️ 个人主页: AI_magician &#x1f4e1;主页地址&#xff1a; 作者简介&#xff1a;CSDN内容合伙人&#xff0c;全栈领域优质创作者。 &#x1f468;‍&#x1f4bb;景愿&#xff1a;旨在于能和更多的热爱计算机的伙伴一起成长&#xff01;&#xff01;&…

c#可变参数(params)关键字

通过使用 params 关键字&#xff0c;可以指定采用可变数量参数的方法参数。 可以发送参数声明中指定类型的参数的逗号分隔列表&#xff0c;也可以发送指定类型的参数数组。您也可以不发送任何参数。如果未发送任何参数&#xff0c;则参数列表的长度为零。 方法声明中的 param…

早上好,我的leetcode(第一期)

写在前面&#xff1a;每天早上到实验室早上昏昏欲睡&#xff0c;那不如写一题吧~ 文章目录 371. 两整数之和面试题08.05.递归乘法29.两数相除50.Pow(x,n)面试题 16.07. 最大数值2119. 反转两次的数字69. x 的平方根70.爬楼梯1631.最小体力消耗路径 371. 两整数之和 两整数之和…