C语言其他类型的数组

1.字符数组

  • 概念:专门存放字符的数组,称为字符数组

  • 初始化与元素引用:

    char s1[5] = {'a', 'b', 'c', 'd', 'e'}; // s1存放的是字符序列,非字符串
    char s2[6] = {'a', 'b', 'c', 'd', 'e', '\0'}; // s2存放了一个字符串

    char s[6] = {"abcde"}; // 使用字符串直接初始化字符数组
    char s[6] = "abcde" ; // 大括号可以省略

    s[0] = 'A'; // 索引第一个元素,赋值为 'A'

2.多维数组

  • 概念:若数组元素类型也是数组,则该数组称为多维数组

  • 示例:

    int a[2][3];

    // 代码释义:
    // 1, a[2] 是数组的定义,表示该数组拥有两个元素
    // 2, int [3]是元素的类型,表示该数组元素是一个具有三个元素的整型数组

  • 多维数组的语法跟普通的一维数组语法完全一致

  • 初始化:

    int a[2][3] = {{1,2,3}, {4,5,6}}; // 数组的元素是另一个数组

    int a[2][3] = {{1,2,3}, {4,5,6}, {7,8,9}}; // 错误,越界了
    int a[2][3] = {{1,2,3}, {4,5,6,7}}; // 错误,越界了

    int a[ ][3] = {{1,2,3}, {4,5,6}}; // OK,自动根据初始化列表分配数组元素个数
    int a[2][3] = {{1,2,3}}; // OK,只初始化数组元素的一部分

  • 元素引用:

    // a[0] 代表第一个元素,这个元素是一个具有 3 个元素的数组:{1,2,3}
    // a[1] 代表第二个元素,这个元素也是一个具有 3 个元素的数组:{4,5,6}

    printf("%d", a[0][0]); // 输出第一个数组的第一个元素,即1
    printf("%d", a[1][2]); // 输出第二个数组的第三个元素,即6

相关推荐
MATLAB代码顾问8 分钟前
改进遗传算法(IGA)求解作业车间调度问题(JSSP)——附MATLAB代码
开发语言·matlab
syker26 分钟前
AIFerric深度学习框架:自研全栈AI基础设施的技术全景
开发语言·c++
她说彩礼65万30 分钟前
C语言 文件
linux·服务器·c语言
HSunR39 分钟前
dify 搭建ai作业批改流
开发语言·前端·javascript
txg66641 分钟前
自动驾驶领域热点简报(2026-04-26 ~ 2026-05-03)
linux·人工智能·自动驾驶
代码不加糖1 小时前
2026 跨境电商独立站实战:从 0 到 1 搭建高转化 SaaS 商城(附源码)
开发语言·前端·javascript
二哈赛车手1 小时前
新人笔记---ES和kibana启动问题以及一些常用的linux的错误排查方法,以及ES,数据库泄密解决方案[超详细]
java·linux·数据库·spring boot·笔记·elasticsearch
时空系1 小时前
第9篇:成员功能——为结构体添加能力 Rust中文编程
开发语言·网络·rust
嵌入式×边缘AI:打怪升级日志1 小时前
嵌入式Linux开发核心自测题(全系列精华浓缩)
java·linux·运维
xvhao20131 小时前
单源、多源最短路
数据结构·c++·算法·深度优先·动态规划·图论·图搜索算法