v70.字符串

1.字符数组

在这里插入图片描述在这里插入图片描述这个字符数组最后加入了0,变成了可以计算的字符数组,属于字符串了。
在这里插入图片描述

  • 写0 和 写 ‘\0’ 是一样的。因为单引号里面使用了转义字符,他俩都表示的大小都是十进制的0。只不过占用的内存空间不同,一个是4字节,一个是1字节。
  • 但是和‘0’不同,‘0’表示的是一个字符0,他表示的十进制的值是48。
  • 0 是字符串结束的标志,但他不被计到字符串的长度中去;但是在数组中,0作为一个元素,被计入到数组的大小中去。

2.字符串变量

在这里插入图片描述这些变量其实都是字符数组的变量,属于不同的表达形式。

  • 定义了一个指针,指向了一个字符串,里面是“Hello”
  • 定义了一个字符数组;
  • 定义了一个10字节大的字符数组,里面放入了“Hello”,它有5个字符,要占据6个字节的空间,因为编译器会在结尾自动补充"\0";

3.字符串常量

在这里插入图片描述

  • 字符数组的长度一定是看到的字符的 长度+1,别忘了最后的“\0”。一定要有0才是c语言的字符串
  • 相邻的两个字符串会被连接起来,成为一个大的字符串
    在这里插入图片描述字符串字面量就是双引号 “”

4.字符串的常/变量

在这里插入图片描述

char *s = "hello";
s[0] = b;
1.这种操作是不允许的,尽管可以进行编译
  1. s和s2的地址是相同的,表示他们指向同一个 hello;
  2. 定义了一个本地变量 i;可以看到本地变量的地址很大,和 s 距离很远
  3. 其实,s(s2)指向的字符串储存于代码段,而且是只读的,所以不可以执行s[0]=…
  4. "hello"实际上是一个字符串常量
    在这里插入图片描述
区别就在于:
char *s = "hello";
指针s要指向某个地方的字符串hello,(只读)

char s[] = "hello";
数组s,字符串hello就储存在这,并且可进行字符串的计算

在这里插入图片描述
根据输出的地址,定义的变量 i 和之后的数组s3[]是储存到一块的,都是本地变量

在这里插入图片描述
如果作为指针,不知道字符串在哪,可以用来:

  1. 只表达一个字符串,不去改写
  2. 如果数组作为了函数的参数,那么他就是一个指针了,不妨使用指针的形式表达函数的参数
    在这里插入图片描述

在这里插入图片描述最后注意,字符串末尾一定有0;数组和指针、数组和字符串的关系。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

微服务简介及其相关技术栈

目录 1、简介 2、技术栈 3、单体架构 4、分布式架构 5、微服务 6、总结 🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数据结构和算法,初步涉猎Pyth…

Day20-磁盘管理

Day20-磁盘管理 1. cut 切:2. 磁盘历史和内外部物理结构介绍2.1 磁盘发展趋势和实现措施2.2 磁盘知识的体系结构2.3 机械磁盘的外部结构2.4 SSD固态硬盘的外部结构2.5 固态硬盘内部结构2.6 缓存在服务器各硬件上的速度和大小对比另类维度图解,从上到下由高速到低速&…

【rust】12、编译为 linux x86 目标

一、编译为 linux x86 目标 1.1 musl-cross 要实现 Linux 平台可以运行的程序,那么需要使用 musl 来替代 glibc,musl 实现了Linux libc。 musl 在 macOS 上使用 musl-cross, musl-cross 是用来专门编译到 Linux 的工具链, 下面进行安装&…

【盲源分离】快速理解FastICA算法(附MATLAB绘图程序)

今天讲一个在信号分析领域较为常用的一个方法,即盲源分离算法中的FastICA。 我们先从一个经典的问题引入。 一、鸡尾酒舞会问题 想象一下,你身处一个熙熙攘攘的鸡尾酒舞会中。四周回荡着各种声音:笑声、交谈声、玻璃碰撞声,甚至…

Vmware Fusion 13 安装CentOS、Ubuntu、Windows11虚拟机

Vmware Fusion 13 安装CentOS、Ubuntu、Windows11虚拟机 背景:每次安装都要到处找资源,现在一篇文章足以 文章目录 Vmware Fusion 13 安装CentOS、Ubuntu、Windows11虚拟机一、Mac中安装CentOS虚拟机1️⃣:准备镜像2️⃣:创建虚拟…

2024年 前端JavaScript Web APIs 第二天 笔记

Web APIs 第二天 2.1 -事件监听以及案例 2.2 -随机点名案例 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><t…

有趣的数学 矩阵的秩描述了什么信息?

一、什么是矩阵的秩&#xff1f; 矩阵的秩是线性代数领域中一个非常重要的概念&#xff0c;因为它帮助我们知道是否可以找到方程组的解。矩阵的秩还可以帮助我们了解其向量空间的维数。 矩阵的秩是最高阶非零次数的阶数。矩阵的秩等于其中线性独立的行&#xff08;或列&#xf…

【Java】基础算法练习题

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 目录 基础算法练习题&#x1f680;1. 两数之和…

抖音小店的产品价格怎么设置?都需要什么价位的产品?

大家好&#xff0c;我是电商花花。 做抖音小店&#xff0c;一个合理的商品的价格也可以说是非常重要的&#xff0c;价格合理才会吸引到用户这购买。 可能说到价格&#xff0c;很多人第一反应认为随便定就可以了&#xff0c;其实定价是很复杂了&#xff0c;定价定多少&#xf…

如何使用naive 做一个模态框的方式

1.我的问题使用了一个table 表格&#xff0c;在表格中设置俩个按钮 最后做出来的效果 <template><div><h1>测试文件</h1><!-- 表格 --><n-data-table :columns"columns" :data"data" :pagination"pagination" …

QPS 提升 10 倍!滴滴借助 StarRocks 物化视图实现低成本精确去重

作者&#xff1a;滴滴 OLAP 开发工程师 刘雨飞 小编导读&#xff1a; 滴滴于 2022 年引入了 StarRocks。经过一年多的努力&#xff0c;StarRocks 逐渐替代了原有技术栈&#xff0c;成为滴滴内部主要的 OLAP 引擎。截至 2023 年 12 月&#xff0c;滴滴已经成功建立了超过 40 个 …

springboot支持的常用日志框架介绍

日志系统是计算机系统中用于记录和跟踪事件、错误和信息的软件组件。在软件开发和维护过程中&#xff0c;日志系统起着至关重要的作用。它可以帮助开发人员了解软件的运行情况&#xff0c;快速定位和解决问题。本文将从以下几个方面介绍日志系统&#xff1a;日志系统概述、Spri…

java基础-基本数据类型与变量

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 一、Java的基本语法格式 二、Java中的注释 三、Java中的关键字 四、Java中的标识符 五、变量与常量 …

SSM框架,SpringMVC框架的学习(上)

SpringMVC介绍 Spring Web MVC是基于Servlet API构建的原始Web框架&#xff0c;从一开始就包含在Spring Framework中。正式名称“Spring Web MVC”来自其源模块的名称&#xff08; spring-webmvc &#xff09;&#xff0c;但它通常被称为“Spring MVC”。 SpringMVC涉及组件 …

十四、Qt主机信息与网络编程

一、主机信息 1、主机信息接口 QHostInfo&#xff1a;获取主机名称和IP地址QNetWorkInterface&#xff1a;获取主机的所有网络接口&#xff0c;包括子网掩码和广播地址等 &#xff08;1&#xff09;使用 项目添加模块QT network2、实现程序 &#xff08;1&#xff0…

Java中几种常见的创建线程的方式

创建线程的几种方式 方法解释Thread()创建线程对象Thread(String name)创建线程对象&#xff0c;并给线程命名&#xff0c;不会影响线程Thread(Runnable runnable)使用Runnable对象创建线程Thread(Runnable runnable, String name)使用Runnable对象创建线程并给线程命名 方式…

直流电压变送器更改从站地址

直流电压变送器采集模块转RS485修改地址 产品图片 产品说明书 修改从站地址 在串口助手上将默认的从站地址01h修改为0Bh 原从站地址&#xff1a;01h 修改参数&#xff1a;10h 通信参数允许修改寄存器&#xff1a;1b fe&#xff08;说明书里7166的十六进制&#xff09; 00 02…

buuctf misc做题笔记

喵喵喵 使用stegsolve.jar&#xff0c;按BGR顺序提取出一个png图片&#xff0c;是一个只显示一半的二维码&#xff0c;修改图片高度显示全部二维码&#xff0c;解析出一个百度网盘地址&#xff0c;https://pan.baidu.com/s/1pLT2J4f 下载得到压缩包flag.rar。解压成功&#xf…

Vue开发实例(二)Vue代码运行及分析配置

Vue项目代码运行及分析 一、项目运行二、目录结构说明1、项目本身结构2、其他可能用到的文件夹 三、建议配置1、启动服务浏览器自动打开页面地址2、关闭eslint校验工具3、 src文件夹的别名的设置 一、项目运行 上篇文件末尾介绍到&#xff0c;进入项目&#xff0c;运行启动命令…

7.WEB渗透测试-Linux基础知识-Linux基础操作(一)

内容参考于&#xff1a; 易锦网校会员专享课 上一篇内容&#xff1a;5.WEB渗透测试-前置基础知识-常用的dos命令-CSDN博客 1.终端 终端&#xff1a;是一种特殊的字符设备&#xff0c;用来向计算机输入数据和显示计算机的输出 2.相对路径、绝对路径 绝对路径&#xff1a;cd/h…