【C 语言】数组 ( 数组类型表达 | 定义数组类型 )

举报
韩曙亮 发表于 2022/01/13 00:54:55 2022/01/13
【摘要】 文章目录 总结一、数组类型表达二、定义数组类型三、代码示例 总结 // 定义类数组数据类型 int [10] , 类型别名为 ArrayType typedef int (...

总结

    // 定义类数组数据类型 int [10] , 类型别名为 ArrayType
    typedef int (ArrayType)[10];

    // 与 int array[10] = {0}; 作用相同
    ArrayType array2 = {0};

  
 
  • 1
  • 2
  • 3
  • 4
  • 5




一、数组类型表达



C 语言中的 数据类型 分为 基础数据类型 , 非基础数据类型 ;


数组类型 由 元素类型 和 元素个数 共同决定 ,

int array[10] 的数据类型是 int [10] , 其中 int 是元素类型 , [10] 是元素个数 ;





二、定义数组类型



定义数组类型 : 小括号 () 优先级高于 中括号 [] , 二者的结合方向都是自左向右 ; 参考 C 运算符 结合性 ;

typedef int (ArrayType)[10] 中 , 有小括号 , 优先考虑小括号 , 核心标识符是 ArrayType ;

    // 定义类数组数据类型 int [10] , 类型别名为 ArrayType
    typedef int (ArrayType)[10];

  
 
  • 1
  • 2

使用定义的数组类型别名声明数组 :

    // 与 int array[10] = {0}; 作用相同
    ArrayType array2 = {0};

  
 
  • 1
  • 2




三、代码示例



#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/**
 * @brief 主函数入口
 * @return
 */
int main()
{
    // 定义数组
    int array[10] = {0};

    // 定义类数组数据类型 int [10] , 类型别名为 ArrayType
    typedef int (ArrayType)[10];

    // 与 int array[10] = {0}; 作用相同
    ArrayType array2 = {0};

    // 循环控制变量
    int i = 0;

    // 为数组元素赋值
    for(i = 0; i < 10; i ++)
    {
        array2[i] = i;
    }

    // 打印数组元素
    for(i = 0; i < 10; i ++)
    {
        printf("%d\n", array2[i]);
    }

    // 命令行不要退出
    system("pause");
    return 0;
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

执行结果 :

在这里插入图片描述

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/121600462

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。