<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>爱丽丝邦邦！</title><link>https://7994c6cd.arisu-blog.pages.dev/</link><description>Recent content on 爱丽丝邦邦！</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sun, 16 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://7994c6cd.arisu-blog.pages.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>渲染测试</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/hello-world/</link><pubDate>Sun, 16 Aug 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/hello-world/</guid><description>&lt;p&gt;对各类markdown、html标签、非标准markdown的渲染测试。&lt;/p&gt;
&lt;h1 id="一级目录"&gt;一级目录&lt;/h1&gt;
&lt;h2 id="二级目录"&gt;二级目录&lt;/h2&gt;
&lt;h3 id="三级目录"&gt;三级目录&lt;/h3&gt;
&lt;h4 id="四级目录"&gt;四级目录&lt;/h4&gt;
&lt;h5 id="五级目录"&gt;五级目录&lt;/h5&gt;
&lt;h6 id="六级目录"&gt;六级目录&lt;/h6&gt;
&lt;p&gt;普通文字。&lt;br&gt;
&lt;strong&gt;加粗。&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;斜体。&lt;/em&gt;&lt;br&gt;
&lt;del&gt;划去。&lt;/del&gt;&lt;br&gt;
&lt;u&gt;下划线，html标签。&lt;/u&gt;&lt;br&gt;
==高亮。==&lt;br&gt;
&lt;del&gt;==***以上的组合，下划线无法并入。 ***==&lt;/del&gt;&lt;br&gt;
使用&lt;code&gt;$&lt;/code&gt;行内公式：&lt;span class="katex"&gt;&lt;span class="katex-html" aria-hidden="true"&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:1.0622em;vertical-align:-0.2481em;"&gt;&lt;/span&gt;&lt;span class="mord"&gt;&lt;span class="mord mathnormal"&gt;x&lt;/span&gt;&lt;span class="msupsub"&gt;&lt;span class="vlist-t vlist-t2"&gt;&lt;span class="vlist-r"&gt;&lt;span class="vlist" style="height:0.8141em;"&gt;&lt;span style="top:-2.4519em;margin-left:0em;margin-right:0.05em;"&gt;&lt;span class="pstrut" style="height:2.7em;"&gt;&lt;/span&gt;&lt;span class="sizing reset-size6 size3 mtight"&gt;&lt;span class="mord mtight"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="top:-3.063em;margin-right:0.05em;"&gt;&lt;span class="pstrut" style="height:2.7em;"&gt;&lt;/span&gt;&lt;span class="sizing reset-size6 size3 mtight"&gt;&lt;span class="mord mtight"&gt;2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="vlist-s"&gt;​&lt;/span&gt;&lt;/span&gt;&lt;span class="vlist-r"&gt;&lt;span class="vlist" style="height:0.2481em;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;
使用&lt;code&gt;$$&lt;/code&gt;公式块：&lt;br&gt;
&lt;/p&gt;</description></item><item><title>Shell入门</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/1-shell/</link><pubDate>Sun, 12 Jul 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/1-shell/</guid><description>&lt;blockquote&gt;
 &lt;p&gt;本文章未经过可读性提升&lt;/p&gt;

&lt;/blockquote&gt;&lt;p&gt;&lt;a href="https://missing-semester-cn.github.io/2026/course-shell/" target="_blank" rel="noopener"&gt;讲义&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="课堂内容"&gt;课堂内容&lt;/h2&gt;
&lt;p&gt;终端 里有 shell&lt;br&gt;
Linux默认bash，现在有Zsh，与bash兼容&lt;/p&gt;
&lt;p&gt;自动化&lt;/p&gt;
&lt;p&gt;编程语言&lt;/p&gt;
&lt;p&gt;组合程序&lt;/p&gt;
&lt;p&gt;开源软件都离不开shell&lt;br&gt;
prompt 是最前面那串东西&lt;/p&gt;</description></item><item><title>桌面端网易云软件的注入插件betterncm</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/misc/betterncm/</link><pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/misc/betterncm/</guid><description>&lt;p&gt;这是一个桌面端网易云软件的注入插件。&lt;br&gt;
注：作者由于不用网易云音乐了，项目开发优先级下降了。但作者还有一个项目&lt;a href="https://github.com/std-microblock/chromatic" target="_blank" rel="noopener"&gt;https://github.com/std-microblock/chromatic&lt;/a&gt;，似乎是想做一个更通用的，但是处于开发阶段，最近commit也停留在3月31日，应该是不能用。&lt;/p&gt;
&lt;p&gt;先下载安装器&lt;a href="https://github.com/std-microblock/BetterNCM-Installer" target="_blank" rel="noopener"&gt;https://github.com/std-microblock/BetterNCM-Installer&lt;/a&gt;&lt;br&gt;
找个目录放进去，启动，注入网易云&lt;br&gt;
在网易云里面，找到设置按钮底下的betterncm设置，默认插件源是gitcode，现在不能用了，进去把插件源换掉。换了以后，在插件列表里找到&lt;code&gt;Revived Source&lt;/code&gt;，来丰富插件来源。&lt;/p&gt;</description></item><item><title>净化你的浏览器体验</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/misc/browser-addons/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/misc/browser-addons/</guid><description>&lt;p&gt;本文用于收录我觉得不错的浏览器使用脚本/插件/注入代码。胡乱更新。&lt;/p&gt;
&lt;h2 id="净化bing搜索"&gt;净化bing搜索&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://greasyfork.org/zh-CN/scripts/500094-%E5%8E%BB%E9%99%A4bing%E6%90%9C%E7%B4%A2%E4%B8%AD%E7%9A%84%E7%9F%A5%E4%B9%8E" target="_blank" rel="noopener"&gt;https://greasyfork.org/zh-CN/scripts/500094-%E5%8E%BB%E9%99%A4bing%E6%90%9C%E7%B4%A2%E4%B8%AD%E7%9A%84%E7%9F%A5%E4%B9%8E&lt;/a&gt;&lt;br&gt;
一个非常简洁的油猴脚本，你可以在这个基础上添加你想要屏蔽的关键词，比如某度的垃圾。&lt;/p&gt;</description></item><item><title>文件或U盘被进程占用</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/misc/u-disk-occupied/</link><pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/misc/u-disk-occupied/</guid><description>&lt;blockquote class="sakura-callout sakura-callout--tip" data-callout="tip"&gt;
 &lt;span class="sakura-callout__title"&gt;&lt;span class="sakura-callout__icon" aria-hidden="true"&gt;✦&lt;/span&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;/span&gt;
 &lt;div class="sakura-callout__content"&gt;&lt;p&gt;本文内容基于Windows系统&lt;/p&gt;&lt;/div&gt;
&lt;/blockquote&gt;&lt;p&gt;对于删除文件时发现被占用，你可以：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;打开资源监视器&lt;/li&gt;
&lt;li&gt;到cpu那一栏，然后在“关联的句柄”里去找要删除的文件，确认是哪个程序在用，如果没事情，就可以结束进程，再删除文件&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;弹出移动存储介质（如U盘）说设备正在使用中，也一样，直接在关联的句柄里搜盘符。&lt;/p&gt;</description></item><item><title>如何阻止WPS自动启动</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/misc/wps-auto-start/</link><pubDate>Thu, 12 Feb 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/misc/wps-auto-start/</guid><description>&lt;blockquote class="sakura-callout sakura-callout--tip" data-callout="tip"&gt;
 &lt;span class="sakura-callout__title"&gt;&lt;span class="sakura-callout__icon" aria-hidden="true"&gt;✦&lt;/span&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;/span&gt;
 &lt;div class="sakura-callout__content"&gt;&lt;p&gt;本文内容基于Windows系统&lt;/p&gt;&lt;/div&gt;
&lt;/blockquote&gt;&lt;h1 id="问题"&gt;问题&lt;/h1&gt;
&lt;p&gt;众所周知，wps会在后台留下愚蠢的后台进程wpscloudsvr.exe，开机自启，这个进程会在右下角产生广告弹窗，推销WPS会员，而且找不到可以禁止它自启的设置。&lt;/p&gt;</description></item><item><title>VMware Workstation安装</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/misc/vmware-workstation-installation/</link><pubDate>Wed, 11 Feb 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/misc/vmware-workstation-installation/</guid><description>&lt;p&gt;&lt;a href="https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion" target="_blank" rel="noopener"&gt;这里下载&lt;/a&gt;&lt;br&gt;
他会让你跳转到broadcom登录，你去注册个账号，随便填信息，然后去&lt;a href="https://support.broadcom.com/group/ecx/productfiles?subFamily=VMware%20Workstation%20Pro&amp;amp;displayGroup=VMware%20Workstation%20Pro%2017.0%20for%20Windows&amp;amp;release=17.6.3&amp;amp;os=&amp;amp;servicePk=undefined&amp;amp;language=EN&amp;amp;freeDownloads=true" target="_blank" rel="noopener"&gt;这里&lt;/a&gt;下载。&lt;br&gt;
不用新版是因为这个人提到了：&lt;/p&gt;
&lt;blockquote class="sakura-callout sakura-callout--info" data-callout="info"&gt;
 &lt;span class="sakura-callout__title"&gt;&lt;span class="sakura-callout__icon" aria-hidden="true"&gt;i&lt;/span&gt;&lt;span&gt;来自知乎的评论&lt;br&gt;&lt;/span&gt;&lt;/span&gt;
 &lt;div class="sakura-callout__content"&gt;&lt;p&gt;现在点进去之后默认是17.6版本，记得先点一下那个版本，选17.5以下的，千万不要选17.6或者之后的，因为17.6开始博通砍掉了unity这个很好用的功能（可以让虚拟机里面的程序在实体机任务栏里面显示）&lt;/p&gt;</description></item><item><title>高程整理(10)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-10/</link><pubDate>Mon, 15 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-10/</guid><description>&lt;p&gt;&lt;strong&gt;其他&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
 &lt;p&gt;零散的一些东西，不能被归入哪个大主题&lt;/p&gt;

&lt;/blockquote&gt;&lt;hr&gt;
&lt;h2 id="头文件"&gt;头文件&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;用于多源文件项目的公共信息传递。正如前面的课程所说，一个源程序需要使用函数，要使用全局变量，都是需要在前面声明的，每一个源程序都这样去声明一样的东西，会很麻烦且维护性差，那么就可以把一样的东西都写到头文件里去&lt;/li&gt;
&lt;li&gt;头文件里可以含有：
&lt;ul&gt;
&lt;li&gt;符号常量&lt;/li&gt;
&lt;li&gt;常变量&lt;/li&gt;
&lt;li&gt;函数、全局变量的extern、结构体、类 的声明&lt;/li&gt;
&lt;li&gt;不能放全局变量的定义&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;不建议在头文件里面把类似&lt;code&gt;#include &amp;lt;iostream&amp;gt;&lt;/code&gt;啊，&lt;code&gt;using namespace std;&lt;/code&gt;啊这种都写进去，每次引一下自己的头文件就好了。这样看似快，但是违背了权限最小化原则，把很多东西在不知道的情况下放了出来。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;#include &amp;lt;xxx&amp;gt;&lt;/code&gt;会优先在系统目录里找，找不到报错；&lt;code&gt;#include &amp;quot;xxx&amp;quot;&lt;/code&gt;优先在当前文件夹找，找不到去系统目录找，找不到报错。&lt;/li&gt;
&lt;li&gt;头文件里的&lt;code&gt;#pragma once&lt;/code&gt;代表让这个头文件只能被#include一次&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="一些头文件说明"&gt;一些头文件说明&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;C++ 原生没有字符串变量，用字符数组来模拟。&lt;code&gt;#include&amp;lt;string&amp;gt;&lt;/code&gt; 是一个封装，里面的是新增的string类。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cstdio&lt;/code&gt;和&lt;code&gt;cmath&lt;/code&gt;两个库在Visual Studio中被&lt;code&gt;iostream&lt;/code&gt;包含，可以缺省，其他的要加。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="格式化代码"&gt;格式化代码&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://tongji-high-level-language-programming.github.io/Website/reading/#clang-format-%E7%9B%B8%E5%85%B3%E7%AE%80%E4%BB%8B" target="_blank" rel="noopener"&gt;clang-format介绍&lt;/a&gt;&lt;/p&gt;</description></item><item><title>高程整理(1)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-1/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-1/</guid><description>&lt;blockquote&gt;
 &lt;p&gt;说明：&lt;br&gt;
期末临近，我将之前这些以编号命名的笔记进行了重新整理&lt;/p&gt;

&lt;/blockquote&gt;&lt;h1 id="1进制数据类型变量"&gt;1.进制、数据类型、变量&lt;/h1&gt;
&lt;h2 id="进制"&gt;进制&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;对于8进制和16进制转换，解决方法是：8进制转到2进制（每一位是3位2进制），然后转到16进制（每4位是一位16进制）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="数据类型"&gt;数据类型&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;在当前的VS2026 debug/x64编译器标准配置下，&lt;code&gt;short&lt;/code&gt;2字节，&lt;code&gt;int&lt;/code&gt;4字节，&lt;code&gt;long&lt;/code&gt;4字节，&lt;code&gt;long long&lt;/code&gt;8字节，&lt;code&gt;char&lt;/code&gt;1字节，&lt;code&gt;float&lt;/code&gt;4字节，&lt;code&gt;double&lt;/code&gt;8字节，&lt;code&gt;long double&lt;/code&gt;8字节，这也将作为默认约定&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="整型"&gt;整型&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;mark style="background:#fff88f"&gt;计算机内的整数,正数用原码表示,负数用补码表示,该说法是否正确?&lt;/mark&gt;&lt;br&gt;
错的,只有一种表示补码,只不过正数的补码和原码一致,但是你绝对不能说正数用原码表示。&lt;/li&gt;
&lt;li&gt;&lt;mark style="background:#fff88f"&gt;现在看到一个以1开始的二进制整数(1 *** ), 应该是无符号的正数,还是有符号的负数?&lt;/mark&gt;&lt;br&gt;
错误的问题 !!!不是看到这个二进制整数后,再去判断该数是什么类型,而是要先确定以什么类型去看待这个数,再去确定该数的值 即:必须通过类型确定值,而不是通过值确定类型 !!!&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="存储"&gt;存储&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;模：指某种类型数据可以表示的不同数字的总数。比如char就是256.&lt;/li&gt;
&lt;li&gt;补数：模减去数字本身就是补数。char的65,补数191.&lt;/li&gt;
&lt;li&gt;计算机算减法可以表示成加法：A-B变成A+B的补数，再溢出截掉高位。&lt;/li&gt;
&lt;li&gt;有符号采用补码存储，无符号采用原码存储。&lt;/li&gt;
&lt;li&gt;补码的基本规则：正数和0正常，负数的话，原数字取绝对值，转二进制，取反，再+1&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="数据类型细分"&gt;数据类型细分&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;long&lt;/code&gt;在一些编译器上并不是4字节，可能是8字节&lt;/li&gt;
&lt;li&gt;虽然不同但都遵循这个规律：&lt;span class="katex"&gt;&lt;span class="katex-html" aria-hidden="true"&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:0.8304em;vertical-align:-0.136em;"&gt;&lt;/span&gt;&lt;span class="mord text"&gt;&lt;span class="mord"&gt;short&lt;/span&gt;&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;span class="mrel"&gt;≤&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:0.8038em;vertical-align:-0.136em;"&gt;&lt;/span&gt;&lt;span class="mord text"&gt;&lt;span class="mord"&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;span class="mrel"&gt;≤&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"&gt;&lt;/span&gt;&lt;span class="mord text"&gt;&lt;span class="mord"&gt;long&lt;/span&gt;&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;span class="mrel"&gt;≤&lt;/span&gt;&lt;span class="mspace" style="margin-right:0.2778em;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"&gt;&lt;/span&gt;&lt;span class="mord text"&gt;&lt;span class="mord"&gt;long long&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="字面量"&gt;字面量&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;想要在 C++ 里表示一个整型常量，有这些方法：&lt;/p&gt;</description></item><item><title>高程整理(2)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-2/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-2/</guid><description>&lt;p&gt;&lt;strong&gt;2.C++输入输出&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="基本"&gt;基本&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;cin、cout、&amp;laquo;、&amp;raquo;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;、&lt;code&gt;cout&lt;/code&gt;都是对象。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;&amp;lt;&lt;/code&gt;、&lt;code&gt;&amp;gt;&amp;gt;&lt;/code&gt;此处是流插入、提取&lt;strong&gt;运算符&lt;/strong&gt;，原来是位操作运算符，7级优先级，经过重载变成现在的功能。重载运算符现在不学。&lt;/li&gt;
&lt;li&gt;cout &amp;laquo; a;实际上是表达式语句。可以使用对表达式分析的方式进行解释。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;&amp;lt;&lt;/code&gt;在cout对象和a变量之间进行运算。运算的值是cout对象本身。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cout &amp;lt;&amp;lt; a,b,c;&lt;/code&gt;实际上是一个逗号表达式，表达式的值是c，最终只会输出a的值。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;缓冲区
&lt;ul&gt;
&lt;li&gt;cout被插入数据后，存储在缓冲区内，当满足条件（缓冲区满/endl/&amp;rsquo;\n&amp;rsquo;/使用&lt;code&gt;cout.flush();&lt;/code&gt;刷新）才会集中输出一次。Windows系统下对这个规则的遵守不如Linux规范。&lt;/li&gt;
&lt;li&gt;cin不会被直接提取数据，输入的数据会存储在缓冲区内，当满足条件（缓冲区满/&amp;rsquo;\n&amp;rsquo;）才会集中被提取一轮数据。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;输入输出设备均可以更改，称为输入/输出重定向。&lt;/li&gt;
&lt;li&gt;输出会自动判断数据类型，选择合适的方法输出。char类型会自动按照字符输出。如果想要按数字或者按字符输出，强制类型转换即可。&lt;/li&gt;
&lt;li&gt;奇技淫巧：不用强制类型转换，但是让char以整数的方式输出：&lt;code&gt;cout &amp;lt;&amp;lt; ch+0 &amp;lt;&amp;lt; endl;&lt;/code&gt;运算那里的涉及整型提升。&lt;/li&gt;
&lt;li&gt;cin 不能把数据提取到常量、表达式里去&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="cincout格式控制符"&gt;cin/cout格式控制符&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;考试会给出&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;控制符&lt;/th&gt;
					&lt;th&gt;作用&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;dec&lt;/td&gt;
					&lt;td&gt;设置整数为 10 进制&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;hex&lt;/td&gt;
					&lt;td&gt;设置整数为 16 进制&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;oct&lt;/td&gt;
					&lt;td&gt;设置整数为 8 进制&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setbase(n)&lt;/td&gt;
					&lt;td&gt;设置整数为 n 进制 (n=8,10,16)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setfill(c)&lt;/td&gt;
					&lt;td&gt;设置填充字符，c 可以是字符常量或字符变量&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setprecision(n)&lt;/td&gt;
					&lt;td&gt;设置实数的精度为 n 位。在以一般十进制形式输出时，n 代表有效数字。在以 fixed (固定小数位) 形式和 scientific (指数) 形式输出时，n 为小数位数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setw(n)&lt;/td&gt;
					&lt;td&gt;设置字段宽度为 n&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::fixed)&lt;/td&gt;
					&lt;td&gt;设置浮点数以固定的小数位数显示&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::scientific)&lt;/td&gt;
					&lt;td&gt;设置浮点数以科学计数法（即指数形式）显示&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::left)&lt;/td&gt;
					&lt;td&gt;输出数据左对齐&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::right)&lt;/td&gt;
					&lt;td&gt;输出数据右对齐&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::skipws)&lt;/td&gt;
					&lt;td&gt;忽略前导的空格&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::uppercase)&lt;/td&gt;
					&lt;td&gt;在以科学计数法输出 E 和十六进制输出字母 X 时，以大写表示&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;setiosflags(ios::showpos)&lt;/td&gt;
					&lt;td&gt;输出正数时，给出 “+” 号&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;resetiosflags(*)&lt;/td&gt;
					&lt;td&gt;终止已设置的输出格式状态，括号内为具体内容 (本处用 * 替代)&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="cin"&gt;cin&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;的输入终止条件是回车、空格、非法输入。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;的读值遵循“合理且最长原则”，或者可以描述为“贪心”。先把可以读的读到，然后才去看对不对。这个原则和之前&lt;a href="https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-1/#oct-char"&gt;字符常量8进制转义&lt;/a&gt;的读取逻辑是很像的。详细规则见&lt;a href="#cin%e8%af%bb%e5%85%a5%e8%a7%84%e5%88%99"&gt;下方cin读入规则&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;读数值的时候，如果直接上非法字符或数值超过目标变量的上下限，那么实际的读入量将会不可信，此时讨论这个读入的东西没有意义，不同编译器都不一样。此时&lt;code&gt;cin.good()&lt;/code&gt;为0.&lt;/li&gt;
&lt;li&gt;要判断读入的值可不可信，可以使用&lt;code&gt;cin.good()&lt;/code&gt;或者&lt;code&gt;cin.fail()&lt;/code&gt;，按照字面意思，大部分情况下是互斥的。会有少部分情况出现矛盾。（查阅得知这个东西是用于检查当前输入流是否正常，所以能拿来检查输入正不正常。）&lt;/li&gt;
&lt;li&gt;一旦&lt;code&gt;cin.good()&lt;/code&gt;变成0,后面所有的&lt;code&gt;cin&lt;/code&gt;读入都不会成功执行。&lt;/li&gt;
&lt;li&gt;无符号错误规律和有符号不一样，有符号的超出范围就会good变0,而无符号整数输入绝对值超范围才会good变0.负数但绝对值没抄是当作正常操作的。有符号的整数这里和赋值超范围的规则是不一样的。有符号赋值超范围只是会警告截断。但这里直接让输入流异常。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;永远无法读取空格、换行，因为把这些当作分隔符。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;读取浮点数的时候，输入&amp;quot;.3&amp;quot;可以用于代表&amp;quot;0.3&amp;quot;。&lt;/li&gt;
&lt;/ul&gt;
&lt;div id ="char1"&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;读取字符的时候，只能读图形字符，不能输入换行，不能输入空格。转义符方式无法输入控制字符。‘ &amp;quot; \ 都当单字符。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;不能跟endl。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;读东西，如果缓冲区没读完，就继续读缓冲区里的东西。&lt;/li&gt;
&lt;li&gt;ctrl+c表示程序结束，这也会导致&lt;code&gt;cin.good()&lt;/code&gt;变成0，之后发生的事都不可信&lt;/li&gt;
&lt;li&gt;ctrl+z表示输入结束，这也会导致&lt;code&gt;cin.good()&lt;/code&gt;变成0，之后cin后变量的数据都不可信&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;进bool，可以输0和1,不能输&lt;code&gt;true&lt;/code&gt; &lt;code&gt;false&lt;/code&gt;，&lt;strong&gt;不能输除了0和1以外的任何数字&lt;/strong&gt;，否则都会&lt;code&gt;cin.good()&lt;/code&gt;变0.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cin&lt;/code&gt;连续输入多个&lt;code&gt;int&lt;/code&gt;时，碰到非法字符，下一个是0，再下面才是随机值&lt;/li&gt;
&lt;/ul&gt;
&lt;div id ="string1"&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cin &amp;gt;&amp;gt;str&lt;/code&gt;；不能读有空格的字符串，输入多个的时候，空格是分隔符，与scanf不一样的是，超出长度不会报错，会截取能保证数组尾部有尾0的部分，比scanf安全，最后没有换行符。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="cin读入规则"&gt;cin读入规则&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;cin读数据的流程：
&lt;ol&gt;
&lt;li&gt;按照合理且最长原则的某一条规则读取一次数据。&lt;/li&gt;
&lt;li&gt;读取到非法的东西，或者到空格和换行了，结束本次读取，开始将读好的东西转成目标形式：
&lt;ol&gt;
&lt;li&gt;能够成功转换（类型不同，只要是读入的东西占用内存小于等于目标类型，都是可以成功的）：成功完成本次输入。&lt;/li&gt;
&lt;li&gt;转换失败（没有读到东西，读入的东西占用内存小于等于目标类型）：good()置0.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;大的数据读进小的空间，会出现越界写的危险行为，所以不可以。&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;&lt;/th&gt;
					&lt;th&gt;第一个字符&lt;/th&gt;
					&lt;th&gt;后续字符&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;整型&lt;/td&gt;
					&lt;td&gt;+、-、数码&lt;/td&gt;
					&lt;td&gt;数码&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;浮点型&lt;/td&gt;
					&lt;td&gt;+、-、数码、小数点&lt;/td&gt;
					&lt;td&gt;数码、第一次出现的小数点、第一次出现的e&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;字符&lt;/td&gt;
					&lt;td&gt;一个非空格非回车的字符&lt;/td&gt;
					&lt;td&gt;/&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;字符串&lt;/td&gt;
					&lt;td&gt;待后续补充&lt;/td&gt;
					&lt;td&gt;待后续补充&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;此外的都是非法情况。如果读到了非法的字符，数据是不会从缓冲区拿出来的，非法字符还在那里面。&lt;br&gt;
提示：浮点的情况，读到.3,得值0.3&lt;/p&gt;</description></item><item><title>高程整理(3)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-3/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-3/</guid><description>&lt;p&gt;&lt;strong&gt;3.C输入输出&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="printfscanf格式字符"&gt;printf/scanf格式字符&lt;/h2&gt;
&lt;p&gt;考试会给不用记&lt;/p&gt;
&lt;h3 id="printf所用的格式字符的种类"&gt;printf所用的格式字符的种类&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;格式字符&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;d, i&lt;/td&gt;
					&lt;td&gt;带符号的十进制形式整数(正数不带+)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;o&lt;/td&gt;
					&lt;td&gt;八进制无符号形式输出整数(不带前导0)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;x, X&lt;/td&gt;
					&lt;td&gt;十六进制无符号形式输出整数(不带前导0x)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;u&lt;/td&gt;
					&lt;td&gt;十进制无符号形式输出整数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;c&lt;/td&gt;
					&lt;td&gt;以字符形式输出(一个字符)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;s&lt;/td&gt;
					&lt;td&gt;输出字符串&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;f&lt;/td&gt;
					&lt;td&gt;以小数形式输出浮点数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;e, E&lt;/td&gt;
					&lt;td&gt;以指数形式输出浮点数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;g, G&lt;/td&gt;
					&lt;td&gt;从f，e中选择宽度较短的形式输出浮点数&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="printf所用的附加格式字符的种类"&gt;printf所用的附加格式字符的种类&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;附加格式字符&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;字母l&lt;/td&gt;
					&lt;td&gt;表示长整型整数，用于d, o, x, u前&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;字母h&lt;/td&gt;
					&lt;td&gt;表示短整型整数，用于d, o, x, u前&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;正整数m&lt;/td&gt;
					&lt;td&gt;表示输出数据的宽度&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;正整数.n&lt;/td&gt;
					&lt;td&gt;对浮点数，表示n位小数&lt;br&gt;对字符串，表示前n个字符&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;-&lt;/td&gt;
					&lt;td&gt;输出左对齐&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="scanf所用的格式字符的种类"&gt;scanf所用的格式字符的种类&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;格式字符&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;d, i&lt;/td&gt;
					&lt;td&gt;输入带符号的十进制形式整数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;o&lt;/td&gt;
					&lt;td&gt;输入八进制无符号形式整数(不带前导0)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;x, X&lt;/td&gt;
					&lt;td&gt;输入十六进制无符号形式整数(不带前导0x)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;u&lt;/td&gt;
					&lt;td&gt;输入十进制无符号形式整数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;c&lt;/td&gt;
					&lt;td&gt;输入单个字符&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;s&lt;/td&gt;
					&lt;td&gt;输入字符串&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;f&lt;/td&gt;
					&lt;td&gt;输入小数/指数形式的浮点数&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;e, E, g, G&lt;/td&gt;
					&lt;td&gt;同f&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="scanf所用的附加格式字符的种类"&gt;scanf所用的附加格式字符的种类&lt;/h3&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;附加格式字符&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;字母l&lt;/td&gt;
					&lt;td&gt;输入长整型数，用于d, o, x, u前&lt;br&gt;输入double型数，用于f, e, g前&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;h&lt;/td&gt;
					&lt;td&gt;输入短整型数，用于d, o, x, u前&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;正整数n&lt;/td&gt;
					&lt;td&gt;指定输入数据所占的宽度&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;*&lt;/td&gt;
					&lt;td&gt;本输入项不赋给相应的变量&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="printf"&gt;printf&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;printf(&amp;quot;%d&amp;quot;, 'A')&lt;/code&gt;是合理的行为，不需要进行强制数据转换&lt;/li&gt;
&lt;li&gt;转义符在格式控制表列里是会正常转义的。&lt;/li&gt;
&lt;li&gt;%d数量和输出表列的数量关系
&lt;ul&gt;
&lt;li&gt;如果%d(格式符的数量)小于后面输出表列的数量，则忽略输出表内多出来的量&lt;/li&gt;
&lt;li&gt;如果%d(格式符的数量)大于后面输出表列的数量，属于未定义行为，输出不确定的值，可能会用0代替没有提供的量来输出&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;printf的返回值的含义是：输出的字符个数&lt;/li&gt;
&lt;li&gt;附加控制符l的作用：按照长整型输出数据，%ld:long&lt;/li&gt;
&lt;li&gt;附加控制符h的作用：按照短整型输出数据,%hd:short&lt;/li&gt;
&lt;li&gt;如果要输出的数据类型与格式控制符的类型不一致，则以格式控制符为准&lt;/li&gt;
&lt;li&gt;%后面加一个整数：代表这个数据的输出宽度，正数右对齐，负数左对齐&lt;/li&gt;
&lt;li&gt;%f：将浮点数以十进制的小数形式输出，&lt;strong&gt;默认小数点后6位&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;%e：将浮点数以十进制的科学记数法（小写e）形式输出&lt;/li&gt;
&lt;li&gt;%E：将浮点数以十进制的科学记数法（大写E）形式输出，&lt;/li&gt;
&lt;li&gt;%e和%E的区别是指数标识符字母e的大小写&lt;/li&gt;
&lt;li&gt;%g/%G：输出形式为小数形式和科学记数法之间宽度较小的一种，默认使用6位有效数字并去除尾0&lt;/li&gt;
&lt;li&gt;%g/%G：输出形式的差别为用科学记数法输出时e的大小写&lt;/li&gt;
&lt;li&gt;对于double数据，输出时格式符%f和%lf没有区别&lt;/li&gt;
&lt;li&gt;%后加.+整数：代表用%f和%e方式浮点数的小数点后位数（即使是用e方式输出，也是小数点后位数，不是有效位数），%g方式下的小数点后位数（小数形式）和有效位数（科学记数法），%s方式下代表输出字符串的前多少个字符&lt;/li&gt;
&lt;li&gt;想要输出%本身，需要另一个%来转义：&lt;code&gt;%%&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;printf输出字符数组的时候，如果最后没有尾零，为一直输出越界&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="scanf"&gt;scanf&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;scanf()&lt;/code&gt;函数返回值为正确输入的变量的数量&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scanf()&lt;/code&gt;终止条件4个（&lt;code&gt;%c&lt;/code&gt;不是这样）：
&lt;ol&gt;
&lt;li&gt;回车&lt;/li&gt;
&lt;li&gt;空格&lt;/li&gt;
&lt;li&gt;非法字符&lt;/li&gt;
&lt;li&gt;达到指定宽度&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;多个输入时，格式控制符间是否有空格不影响正确性&lt;/li&gt;
&lt;li&gt;当格式控制表列中有除空格以外的其它字符（逗号，a=等）时，对这些字符的输入方法是要求输入的时候也要包含相同的字符，以相同的方式输入。如果没有按照要求输入，则会输入失败，从和格式控制表列开始不一样的地方以后的东西都留在输入流中待下次读取。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;%md&lt;/code&gt;中的m表示：读取m个宽度来作为输入值,到达设定的总宽度的结束条件优先级低于前面3个(回车空格非法)&lt;/li&gt;
&lt;li&gt;结论：&lt;code&gt;%*md&lt;/code&gt;的&lt;code&gt;*m&lt;/code&gt;表示：读取m个宽度并不作为任何输入，直接忽略&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scanf&lt;/code&gt;中， 输入浮点型数据时，&lt;code&gt;%f&lt;/code&gt;（float） 和 &lt;code&gt;%lf&lt;/code&gt;(double) 有差别，上面printf里没区别&lt;/li&gt;
&lt;li&gt;&lt;code&gt;%mf&lt;/code&gt;/&lt;code&gt;%mlf&lt;/code&gt;如果指定了宽度m，则只读取宽度m来作为输入数据&lt;/li&gt;
&lt;li&gt;&lt;code&gt;%m.nf&lt;/code&gt;/&lt;code&gt;%m.nlf&lt;/code&gt;如果指定了精度（小数点后的位数），属于未定义行为，发生异常，数据不可信&lt;/li&gt;
&lt;/ul&gt;
&lt;div id ="char3"&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;%c&lt;/code&gt;只读1个字符&lt;/li&gt;
&lt;li&gt;空格、换行（ascii为10）是&lt;code&gt;scanf&lt;/code&gt;中&lt;code&gt;%c&lt;/code&gt;方式的有效输入，但必须注意格式控制表列中有空格，那么这个空格将不会被读入&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;   &lt;div id ="string4"&gt;&lt;/div&gt;&lt;/p&gt;</description></item><item><title>高程整理(4)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-4/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-4/</guid><description>&lt;p&gt;&lt;strong&gt;4.表达式、运算符&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;C/C++中任意表达式都有值&lt;/li&gt;
&lt;li&gt;表达式类型：意思就是最后一步运算是什么类型。b=(a=3*6,a/2):赋值表达式&lt;/li&gt;
&lt;li&gt;一个级别的运算符只可能是同一个结合性。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="运算符优先级"&gt;运算符优先级&lt;/h2&gt;
&lt;p&gt;（经过筛选，留下高程涉及到的）&lt;/p&gt;</description></item><item><title>高程整理(5)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-5/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-5/</guid><description>&lt;p&gt;&lt;strong&gt;5.控制语句&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;ul&gt;
&lt;li&gt;goto语句，直接无条件跳转到其他位置，位置用语句标号来标识，命名和变量名规则一样。本课程禁止使用。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="if"&gt;if&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;if后面跟的大括号里面这个是语句序列，语句序列只有1个语句可以把大括号省略。&lt;/li&gt;
&lt;li&gt;if-else一整个当作一个语句来看&lt;/li&gt;
&lt;li&gt;多支语句，中间写的是&lt;code&gt;else if()……&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;用多支语句来判断区间，第一个支是&lt;code&gt;a&amp;gt;=90&lt;/code&gt;，第二个支写成&lt;code&gt;a&amp;gt;=80 &amp;amp;&amp;amp; a&amp;lt;90&lt;/code&gt;是最好的，即使a是整型，&lt;code&gt;a&amp;lt;=89&lt;/code&gt;也没那么好，因为如果你要改成浮点数，那&lt;code&gt;a&amp;lt;90&lt;/code&gt;的写法是不用改的。&lt;/li&gt;
&lt;li&gt;语句序列只有一个语句可以省略大括号的原则，可以应用于else后面直接跟if的情况。&lt;/li&gt;
&lt;li&gt;if语句的大括号可以用栈来配对。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="switch"&gt;switch&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;switch&lt;/code&gt;只能用来匹配整形。case后是整形。这是因为浮点数有误差，没法匹配。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;switch&lt;/code&gt;语句的执行逻辑：算出括号内表达式的值，然后去下面的case里一一对应。一旦他找到一个case匹配上了，那么在此处进入程序，一句句顺序执行，所以后面的case对他而言就是不存在。如果想要达成一个数一种操作，就要在每一个case的最后加一句&lt;code&gt;break;&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;按照上面这个逻辑，case和default的排列顺序不影响程序逻辑，只要找到，程序就会在那里开始，找不到，就会到default位置开始。&lt;/li&gt;
&lt;li&gt;case后面的表达式必须是常量。如果里面有变量参与计算，会报错。&lt;/li&gt;
&lt;li&gt;case后面的东西不能有重复。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="forwhile"&gt;for/while&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt;的括号里是3个表达式，用分号隔开。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt;的循环逻辑：表达式1只执行一次，然后进入表达式2的判断，执行语句序列，再执行表达式3,再回到表达式2的判断。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt;和&lt;code&gt;while&lt;/code&gt;互相转换。
&lt;ul&gt;
&lt;li&gt;while可以全部转成for&lt;/li&gt;
&lt;li&gt;for不能全部转成while，因为有一个情况下逻辑不同：如果语句中含有一句条件下&lt;code&gt;continue;&lt;/code&gt;的语句，&lt;code&gt;while&lt;/code&gt;会直接去进行运行条件判断，&lt;code&gt;for&lt;/code&gt;还会继续执行一句表达式3.&lt;/li&gt;
&lt;li&gt;说白了，就是for里面con不continue，都会执行表达式3,while遇到continue是做不到这一点的。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt;循环适用于已知循环次数的循环，比&lt;code&gt;while&lt;/code&gt;可读性高。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;for&lt;/code&gt;循环省略表达式2,死循环；省略表达式1、3，完全等同于&lt;code&gt;while&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;如果压行导致&lt;code&gt;for&lt;/code&gt;循环没有任何语句序列需要写了，那么for的结尾加个分号，建议换行写成空语句形式，易于理解。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;break;&lt;/code&gt;只会跳出最近的一层循环/&lt;code&gt;switch&lt;/code&gt;。所以说如果想要灵活的跳，就要使用&lt;code&gt;goto&lt;/code&gt;语句。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;continue;&lt;/code&gt;放在&lt;code&gt;switch&lt;/code&gt;里会报错。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>高程整理(6)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-6/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-6/</guid><description>&lt;p&gt;&lt;strong&gt;6.函数&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="基本"&gt;基本&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;定义无参函数 括号里面除了空着，也可以加一个&lt;code&gt;void&lt;/code&gt;:&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="4"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="nf"&gt;fun1&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;void&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;...&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;函数返回值类型缺省，在C语言里缺省默认为int（不建议缺省），在C++里报错。&lt;/p&gt;</description></item><item><title>高程整理(7)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-7/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-7/</guid><description>&lt;p&gt;&lt;strong&gt;7.数组&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="基本"&gt;基本&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;int a[10];&lt;/code&gt;里的&lt;code&gt;[&lt;/code&gt;和&lt;code&gt;]&lt;/code&gt;都是运算符。&lt;/li&gt;
&lt;li&gt;vla，可变长数组，定义时用变量做长度，曾经支持过，但是会引发UB，现在不要用&lt;/li&gt;
&lt;li&gt;直接打数组名，出来的是第一个元素的地址。&lt;/li&gt;
&lt;li&gt;数组越界，如果越界的不多，可能刚刚好越到代码里定义的其他变量上，这个时候MSVC编译出来的程序甚至会觉得没问题，因为那个越界对应的地址确确实实是程序申请的内存，会认为你确实能改，导致其他的变量意外地就不对了。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="一维数组"&gt;一维数组&lt;/h2&gt;
&lt;h3 id="一维数组初始化"&gt;一维数组初始化&lt;/h3&gt;
&lt;div class="language-cpp" data-line-count="6"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//报错
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//数组长度缺省？数组长度自动为10，因为后面有10个数字
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//下标3~9的全部自动为0.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//全部都是0了！但是理解方式应该为：将d[0]初始化为0,其他的元素自动为0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//将e[0]初始化为1,其他的元素自动为0。不是全1！
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;再次强调，&lt;code&gt;int e[1000] = {1};&lt;/code&gt;将&lt;code&gt;e[0]&lt;/code&gt;初始化为1,&lt;mark style="background:#fff88f"&gt;其他的元素自动为0。不是全1！&lt;/mark&gt;&lt;/li&gt;
&lt;li&gt;需要说明的是：只要你有对数组进行初始化的这个动作，那么所有你没初始化到的元素全部都会初始化为0.所以你甚至可以这样，全部初始化为0&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="1"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;和之前的变量一样的，如果是静态局部，或者全局，都会自己初始化为0。如果是自动变量的数组，又没有做初始化这个动作，那么数组值都是意外值。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="二维数组"&gt;二维数组&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;int a[6][5];&lt;/code&gt;行在前，列在后。6行5列。&lt;/li&gt;
&lt;li&gt;内存里面存放也是这个顺序，&lt;code&gt;a[0][0]&lt;/code&gt;，&lt;code&gt;a[0][1]&lt;/code&gt;……&lt;code&gt;a[0][4]&lt;/code&gt;，&lt;code&gt;a[1][0]&lt;/code&gt;……&lt;/li&gt;
&lt;li&gt;对于二维数组的正确理解方式是：a是一个一维数组，有6个元素：&lt;code&gt;a[0]&lt;/code&gt;， &lt;code&gt;a[1]&lt;/code&gt;……每个元素都是一个一维数组，每个一维数组有5个元素，比如&lt;code&gt;a[0]&lt;/code&gt;这个数组有5个元素&lt;code&gt;a[0][0]&lt;/code&gt;，&lt;code&gt;a[0][1]&lt;/code&gt;……&lt;/li&gt;
&lt;li&gt;更高维的数组，都遵循一样的逻辑&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="二维数组初始化"&gt;二维数组初始化&lt;/h3&gt;
&lt;div class="language-cpp" data-line-count="9"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//按照先行后列的顺序，一个个排进去
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;13&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//报错
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;				&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;				&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;}};&lt;/span&gt;&lt;span class="c1"&gt;//括号套括号
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;},{&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;},{&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;}};&lt;/span&gt;&lt;span class="c1"&gt;//初始化了每行第一个数字，
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//行缺省自动为3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;},{&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;},{&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;}};&lt;/span&gt;&lt;span class="c1"&gt;//行缺省自动为3
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//实际还是3行4列，a[2][2]、a[2][3]都是0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;对于二维数组，列标不可以省略！对于更高维数组，只有第一个值可以不省略，其他都要填写。逻辑是这样的，只有最外层的括号包含的二级括号的数量是编译器可以自己确定的，这代表了第一个长度，而再往里面走，每个都不一样，编译器其实不知道你要什么。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="1"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{{&lt;/span&gt;&lt;span class="err"&gt;……（不写里面的内容了）&lt;/span&gt;&lt;span class="p"&gt;}};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;h2 id="数组的使用"&gt;数组的使用&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;for循环遍历数组，一般习惯是前闭后开：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="3"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;N&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="n"&gt;xxx&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;固定的数组的长度可能要多次用到，最好的方法是去弄一个常变量，或者符号常量。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="简单排序算法"&gt;简单排序算法&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;冒泡排序&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp max-h-360px code-foldable folded" data-line-count="11"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//沈坚示例
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;N&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;N&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;		&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;			&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;			&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;			&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;		&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码"&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;选择排序&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp max-h-360px code-foldable folded" data-line-count="13"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//沈坚示例
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;k&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="n"&gt;k&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;		&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;k&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;			&lt;span class="n"&gt;k&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;j&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;		&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="n"&gt;t&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;k&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;k&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;t&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码"&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;h3 id="数组传入函数"&gt;数组传入函数&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;把数组名字作为实参传入函数，形参是对应类型的数组。因为本质上数组名是首地址，所以传递的时候，直接把函数外的数组给了函数内部使用，函数内部的修改会对外部产生影响。&lt;/li&gt;
&lt;li&gt;就是因为用的实际上是实参的那个数组，所以定义的形参数组不占用空间，是虚的。&lt;/li&gt;
&lt;li&gt;（对于一维数组而言）定义形参数组可以指定数组长度也可以不指定长度。因为这个长度毫无作用，完全由传入的实参的长度决定。所以你乱写形参数组长度都无所谓。建议是不写。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="2"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;func&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[]){&lt;/span&gt;&lt;span class="c1"&gt;//就这样定义形参的数组
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;形参数组的类型和传入的实参数组类型必须完全一致，哪怕是&lt;code&gt;int&lt;/code&gt;和&lt;code&gt;unsigned int&lt;/code&gt;这种区别都不可以有。&lt;/li&gt;
&lt;li&gt;多维数组本质都是一维数组。多维数组传入函数也和上面一样，多维数组形参的元素类型都必须和传入的实参的数组的元素类型一样。因此，多维数组只能让第一个长度缺省，后面所有的长度都必须指定并与实参保持一致。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="4"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;func&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;]){&lt;/span&gt;&lt;span class="c1"&gt;//正确
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;func&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][][][][]){&lt;/span&gt;&lt;span class="c1"&gt;//错误
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;C/C++的函数返回类型不能是数组。可以返回数组的指针来达到目的。&lt;/li&gt;
&lt;/ul&gt;
&lt;div id="tag1"&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;数组定义以后就不能再用&lt;code&gt;a={1,2,3,4,5};&lt;/code&gt;这种方法去整体赋值了，只能逐个修改。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="字符数组"&gt;字符数组&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;字符数组专指类型为&lt;code&gt;char&lt;/code&gt;和&lt;code&gt;unsigned char&lt;/code&gt;的数组。&lt;/li&gt;
&lt;li&gt;字符数组其余所有的特性都继承前面说的所有关于数组的特性。但是增加了部分特殊的特性。&lt;/li&gt;
&lt;li&gt;C/C++原生只有字符串变量，没有字符串常量。原生的实现方法就是用带有‘\0’的字符数组实现。&lt;strong&gt;注意：只有带有&amp;rsquo;\0&amp;rsquo;才能表示字符串变量。&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;字符串的长度：&amp;rsquo;\0&amp;rsquo;前的所有字符数量；字符数组的长度：定义时确定的长度&lt;/li&gt;
&lt;li&gt;除和普通数组一样初始化，字符数组还有一些特殊初始化方法：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="6"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abcd&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abcd&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;span class="c1"&gt;//错误。必须要考虑尾0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abcd&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="c1"&gt;//大括号可省
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abcd&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="c1"&gt;//长度缺省为5
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abcd&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="c1"&gt;//a[4]是因为字符串所以是\0,a[5]-a[9]默认初始化为\0,也就是a[4]-a[9]都是\0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;[][&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;abc&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;defg&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;hijklm&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;道理和&lt;a href="#tag1"&gt;上面&lt;/a&gt;是一样的，字符数组定义以后不能再整体赋值，比如&lt;code&gt;a = &amp;quot;qwert&amp;quot;;&lt;/code&gt;这是不行的，很容易忽略这个问题。字符数组有专门的函数&lt;code&gt;strcpy()&lt;/code&gt;可以做到这个。&lt;/li&gt;
&lt;li&gt;输出了非图形字符，那么就要认为这以后所有的输出都不可信，即使看上去好像对。但是会存在不对的情况。&lt;/li&gt;
&lt;/ul&gt;
&lt;div id="tag2"&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;普通的数组直接拿数组名输出会输出一个地址，但是字符数组做了特殊处理，会按照字符串的形式从起始地址开始输出。（也就是说，如果你的字符数组里面没有\0（即不可以按照字符串理解），然后又直接输出，会发生越界）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;#include&amp;lt;string&amp;gt;&lt;/code&gt;(C++)和&lt;code&gt;#include&amp;lt;cstring&amp;gt;&lt;/code&gt;(C++)/&lt;code&gt;#include&amp;lt;string.h&amp;gt;&lt;/code&gt;( C)是两个东西。前面的是字符串类，是比较符合直觉的一系列完整的字符串的体系；后面的是C风格字符串，引进的是一些处理字符数组的工具。所以说，C语言里面是用不到字符串变量的，实际上都还是字符数组。&lt;/li&gt;
&lt;li&gt;MSVC会觉得c风格字符串这个库里部分函数不安全，不让用，加上&lt;code&gt;#define _CRT_SECURE_NO_WARNINGS&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="c风格字符串的常用字符串处理函数"&gt;C风格字符串的常用字符串处理函数&lt;/h2&gt;
&lt;h3 id="strlenconst-char-s"&gt;&lt;code&gt;strlen(const char s[])&lt;/code&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;求字符串长度，一直找到第一个&amp;rsquo;\0&amp;rsquo;,为止，在此之前所有字符的长度。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;返回值是长度&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="strcatchar-dst-const-char-src"&gt;&lt;code&gt;strcat(char dst[], const char src[])&lt;/code&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;把src拼接到dst的后面，这个操作会导致dst被改动，src不会变化。&lt;strong&gt;返回值是拼接完成的dst&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;为了能够成功拼接，必须保证dst的长度是足够把src拼进来的。否则这个函数不管的，直接给你越界。&lt;/li&gt;
&lt;li&gt;同样的，字符串到第一个\0就认为结束，剩下的他根本不管。这是这里所有函数的原则。&lt;/li&gt;
&lt;li&gt;拼接过去只会影响拼接的那一部分，如果dst里面后面有多的东西，而拼过去的时候又没有到，那些东西都是会保留下来的。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="strncatchar-dst-const-char-src-const-unsigned-int-n"&gt;&lt;code&gt;strncat(char dst[], const char src[], const unsigned int n)&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;只拼src的前n个字符。如果n大于了字符串src的长度，那就等于&lt;code&gt;strcat();&lt;/code&gt;尾0还是会主动添加的。其他和上面一样。&lt;/p&gt;</description></item><item><title>高程整理(8)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-8/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-8/</guid><description>&lt;p&gt;&lt;strong&gt;8.指针&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="概念"&gt;概念&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;32位、64位，指的是CPU单次处理数据的能力，也就决定了CPU的寻址能力，由此决定了虚拟内存的位数。&lt;/li&gt;
&lt;li&gt;32位，理论的内存容量极限是4GB，指针变量大小为4个字节。&lt;/li&gt;
&lt;li&gt;64位，理论的内存容量极限是16EB，指针变量大小为8个字节。&lt;/li&gt;
&lt;li&gt;（指向某一变量的）指针：某一变量的地址&lt;/li&gt;
&lt;li&gt;指针变量：存放地址的变量&lt;/li&gt;
&lt;li&gt;定义指针变量：&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="2"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;p&gt;这里有一个int型变量，现在创建了一个指针p指向a。下面的int是指针的基类型，指针变量p里面存储了a的地址，&amp;amp;a即为取a的地址。&lt;/p&gt;</description></item><item><title>高程整理(9)</title><link>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-9/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/posts/apl/apl-9/</guid><description>&lt;p&gt;&lt;strong&gt;9.结构体、类、对象&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="结构体"&gt;结构体&lt;/h2&gt;
&lt;h3 id="声明定义"&gt;声明、定义&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;同一结构体内的成员名不能同名，但是可以和结构体以外的名字同名&lt;/li&gt;
&lt;li&gt;结构体声明方法&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="language-cpp" data-line-count="5"&gt;
 &lt;button type="button" title="Copy code" class="copy" aria-label="复制代码"&gt;&lt;/button&gt;
 &lt;span class="lang"&gt;cpp&lt;/span&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cpp" data-lang="cpp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;struct&lt;/span&gt; &lt;span class="nc"&gt;student&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="kt"&gt;char&lt;/span&gt; &lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;	&lt;span class="err"&gt;……&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;button type="button" class="code-block-unfold-btn" aria-label="展开代码" hidden&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;声明的位置决定了能在哪里使用这个结构体，就跟之前的变量一个道理。&lt;/p&gt;</description></item><item><title>关于我</title><link>https://7994c6cd.arisu-blog.pages.dev/about/</link><pubDate>Fri, 05 Jun 2026 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/about/</guid><description>&lt;h1 id="邦邦卡邦"&gt;✨邦邦卡邦！✨&lt;/h1&gt;
&lt;h2 id="关于本站"&gt;关于本站&lt;/h2&gt;
&lt;p&gt;这里是 PhyCmdBlock 的小站！&lt;/p&gt;
&lt;p&gt;对这个网站没什么规划，就是觉得搞个博客好玩，想过把手瘾，部署还挺简单，就搞出来了&lt;/p&gt;
&lt;p&gt;本博客并不将自身定位为严谨学术的“技术博客”（使用了这样的主题就足以证明），内容不保证具备专业性，不建议替代专业意见。&lt;/p&gt;</description></item><item><title>不留下点什么吗</title><link>https://7994c6cd.arisu-blog.pages.dev/comment/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/comment/</guid><description/></item><item><title>来加入我们叭</title><link>https://7994c6cd.arisu-blog.pages.dev/links/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/links/</guid><description/></item><item><title>搜索</title><link>https://7994c6cd.arisu-blog.pages.dev/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/search/</guid><description/></item><item><title>追番</title><link>https://7994c6cd.arisu-blog.pages.dev/bangumi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://7994c6cd.arisu-blog.pages.dev/bangumi/</guid><description>&lt;h2 id="未启用"&gt;未启用&lt;/h2&gt;
&lt;p&gt;谁会在b站追番？？&lt;/p&gt;</description></item></channel></rss>