c语言字符串数组的两种表示方法

2023-10-29

字符串数组
1. 定义

  字符串数组:一个数组中的所有的元素都是字符串。  

  如果想存储一堆字符串那么可以使用字符串数组,说白了字符串数组就是二维数组

  字符串数组两种表示:

第一种:char strr[4][6] = {"aaa", "bbb", "ccc"}; //char类型的二维数组
第二种:char *str[4] = {"aaa", "bbb", "ccc"}; //char*类型的一维数组

这里解析一下第二种表示方法:str是一个一维数组,而且数组里面的每一个元素都是一个char类型值的地址。第一个指针是str[0],它指向第一个字符串的第一个字符。第二个指针是str[1],它指向第二个字符串的第一个字符。即一般地每一个指针指向相应字符串的的第一个字符:

*str[0]=='a',*str[1]=='b',*str[2]=='c'

以此类推,str数组实际上并不存放字符串,它只是存放字符串的地址(字符串存在程序用来存放常量的那部分内存中)。可以把str[0]看作第一个字符串。由于数组符号与指针的关系,也可以用str[0][0]来表示第一个字符串中的第一个字符,尽管str没有被定义为二维数组。

示例如下:

这里写图片描述

这里写图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c语言字符串数组的两种表示方法 的相关文章

随机推荐

  • SpringBoot输出“Hello”

    1 创建SpringBoot 创建controller包 其绝对路径是C Dpan javaProject jProject src main java com example jproject controller 在controller
  • 给已经创建好的项目添加eslint

    今天拿到一个项目 发现没有安装eslint 现在就在这大概记录一下vue项目添加eslint的具体的过程 实现目标 给项目添加eslint 在这叫做demo 准备工作 找一个已经开启了eslint的项目 在这叫做demo1 没有的话 可以直
  • 数字图像处理学习笔记(一)

    文章目录 前言 第一章绪论 1 1 什么是数字图像处理 数字图像 数字图像处理 像素 图像处理的三种典型计算处理 1 2 数字图像处理起源 1 3 数字图像处理应用 1 4 数字图像处理基本内容 1 5 图像处理系统的组成 1 6 小结 第
  • 通俗易懂详解typedef函数指针

    1 函数指针 第一个问题 搞清楚函数指针 必须知道函数指针的实质是一个是一个指针 并不是函数 函数有自己的函数体 而指针只是一个变量 也就比如我们常声明的int a 0中的a一样 细致的讲 如果在程序中定义了一个函数 那么在编译时系统就会为
  • csv批量读取测试数据

    1 添加循环控制器 需要注意请求 CSV配置都在循环控制器下 控制器次数为测试用例个数 2 CSV文件 需要注意不用加 因为读取出数据会自动加上 3 CSV配置 4 查看结果树 需要注意如果接口文档写了信息头 就一定要配置
  • web3.0的简单入门与项目介绍

    web3 0 是什么 1 简介 Web3 0是通过区块链等技术实现更加智能化 去中心化 安全可靠的应用 Web3 0的主要特点包括 去中心化 Web3 0将数据和应用从中心化的服务器转移到分布式的节点上 实现去中心化的应用 安全可靠 Web
  • 机考[81 - 90]

    华为机考 081 字符统计及重排 082 组成最大数 083 最大N个数与最小N个数的和 084 最大花费金额 085 最大矩阵和 086 最大括号深度 087 最远足迹 088 最长连续子序列 089 最长元音子串的长度 090 最长子字
  • 逻辑思维是运用计算机科学的基础概念,简析计算思维中的思维方式及思维本质...

    龙源期刊网 http doc docsou com 简析计算思维中的思维方式及思维本质 作者 张菡 来源 科学与财富 2020年第01期 摘要 计算思维是运用计算机科学的基础概念求解问题 设计系统以及理解人类行为的思维活动 本文主要介绍了计
  • 嵌入式linux应用开发完全手册(一)

    第一篇 嵌入式Linux开发环境构建 1 1 2 嵌入式发展 SCM Single Chip Microcomputer 单片机 MCU Micro Controller Unit 微控制器 SoC System on a Chip 系统级
  • 共享打印机 需要查找inf文件_打印机怎么用图文详解

    大家好 今天分享一篇来自小白系统官网 xiaobaixitong com 的图文教程 打印机在办公场所是非常易见的设备 对于打印机的使用需要也是比较大 但是很多人其实并不晓得打印机怎么用 每次打印的时候都要叫人帮忙 本文就来详细教大家如何解
  • 数据库基础题

    讲一下原来公司里建表的规范有哪些 这些规范有什么好处 事务的几个隔离级别 什么是聚集索引和非聚集索引 数据类型TIMESTAMP和DATETIME有什么不同 一个表有是那个查询字段 年龄 性别 姓名 符合索引怎么建 建的原则是什么 用户表
  • 【读书笔记】高级FPGA设计之面积结构设计

    目录 面积结构设计 折叠流水线 基于控制的逻辑复用 资源共享 复位对面积的影响 无复位的资源 无置位的资源 无同步复位的资源 复位 RAM 利用置位 复位触发器引脚 总结 面积结构设计 本篇讨论数字设计的三个主要物理特性的第二个 面积 并分
  • 【VMware】开启虚拟机时 出现“无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件“,这样完美解决

    今早我打开虚拟机时发现以往从没有出现过打不开的问题 今天竟然出现了 不论我尝试多少次 都是出现 无法打开内核设备 Global vmx86 系统找不到指定的文件 针对这个问题 我尝试了很多方法 以下这种方法是我觉得最好用的方法 Window
  • 别了,Firebug!

    点击上方公众号 可快速关注 转自 技术最前线 TopITNews 如有好文章投稿 请点击 这里了解详情 如果你是前端开发者 那你肯定知道或用过 Firebug 10月24日 Mozilla 工程师和 Firebug 团队领导 Jan Hon
  • “35岁还没副业,都不好意思混职场”:摆脱死工资推荐这种副业

    最近很流行一个词 叫 副业刚需 不管从事什么工作 作为一个成年人都应该要有自己的Plan B 根据某招聘网站发布的研究报告显示 43 9 白领当下有副业刚需 且随年龄增加 对副业的需求程度也在提升 在95后 90后 80后 70后中 有副业
  • drool 7.x 属性:duration

    规则 package com rules import entity Ping declare Ping role event 要把插入的数据声明为event 默认是fact expires 20s 用来显示设置事件的过期时间 也就是说过了
  • Java学习笔记38——网络编程02

    UDP通信程序 UDP通信程序 UDP通信原理 UDP发送程序 UDP接受数据 UDP联系 UDP通信程序 UDP通信原理 UDP协议是一种不可靠的网络协议 它在通信两端各自建立一个Socket对象 但是这两个Socket只是发送 接收数据
  • Java时间格式:yyyy-mm-dd转换为yyyy年mm月dd日

    1 sql直接操作 SELECT DATE FORMAT 2022 01 04 Y年 m月 d日 结果 2022年01月04日 2 java 格式化操作 Date date new SimpleDateFormat yyyy MM dd p
  • HAL库之读写STM32F103内部的FLASH空间

    在此声明 本文摘自这里 码神岛 STM32F0x HAL库学习笔记 5 片内FLASH的读写操作 本文开发环境 MCU型号 STM32F103C8T6 IDE环境 MDK 5 25 代码生成工具 STM32CubeMx 5 0 1 HAL库
  • c语言字符串数组的两种表示方法

    字符串数组 1 定义 字符串数组 一个数组中的所有的元素都是字符串 如果想存储一堆字符串那么可以使用字符串数组 说白了字符串数组就是二维数组 字符串数组两种表示 第一种 char strr 4 6 aaa bbb ccc char类型的二维