找回密码
 立即注册
  • QQ空间
  • 回复
  • 收藏

【技术篇:Linux C】构造类型 数组(基本概念)​

admin 2019-10-10 10:04 92人围观 Linux相关



Linux 环境下 C语言编程  基础/概念篇  --  构造类型 数组(基本概念)

    Linux 环境下 C语言编程 会发布一系列的文章(有原创的、转载摘录的),让你进入计算机 Linux 环境下 C语言编程 的世界,会偏向技术(毕竟总要干点专业的事才更有意义),有兴趣的朋友可以阅读;Linux 环境下 C语言编程 主要分 基础/概念篇、函数篇、实现/编程篇、项目/实战篇;基础/概念篇 会描述 Linux 环境下 C语言编程 所需掌握的基础概念(为了便于理解 也会夹杂一些简单的代码);函数篇 会详细介绍Linux 环境下 C语言编程 中所有相关函数的详细介绍;实现/编程篇 Linux 环境下 C语言编程 具体功能的实现(代码)!项目/实战篇 Linux 环境下 C语言编程 的工具开发(让你的编程能力更进一步)!!加油,你值得拥有!!!

1、简介

    数组 是 相同 数据类型的几个,本文 主要 描述 Linux C语言 数组 相关的基本概念

2、一维数组

2.1 一维数组 定义
    类型说明符 数组名 [N];

    2.2 一维数组 赋值
      int a[10]= {0,1,2,3,4,5,6,7,8,9};int a[10]= {0};int a[]= {0,1,2,3,4,5,6,7,8,9};

      2.3 一维数组首地址

          a 和 &a 都是数组的首地址    a的步长是一个元素    &a整个数组a&a

      3、二维数组

      3.1 二维数组 定义
        类型说明符 数组名[N1][N2];

        3.2 二维数组 赋值
          int a[3][4] = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}};int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};int a[][4] = {1,2,3,4,5,6,7,8,9,10,11,12};

          3.3 二维数组 地址
            a:首个一维数组的地址 *a:首个一维数组首元素的地址 **a:首个一维数组的首元素的值 &a:对二维数组名取值等于二维数组的地址 *(&a):对二维数组的地址取值等于首个一维数组的地址 **(&a):对二维数组的地址取值在取值等于首个一维数组的首元素地址

            4、多维数组

            4.1 多维数组 定义
              类型说明符 数组名[N1][N2]...[NN];

              5、字符数组

              5.1 字符数组 基本概念

                  字符数组 就是 用来存放 字符数据的 数组
                char str[10] = "ceph";// str[0] = 'c'// str[1] = 'e'// str[2] = 'p'// str[3] = 'h'// str[4] = '\0'... ...// str[9] = '\0'// C++ 中 用 \0' 标识符 标识一个字符串的 结束

                5.2 字符数组 长度

                5.2.1 strlen

                    strlen 函数 计算 字符串长度

                • strlen函数 在运行时 才会计算 字符串 长度

                • strlen函数 参数 必须是 指针(char*),数组 作为参数 传入时,数组退化成指针,功能是返回 字符串的长度


                5.2.2 sizeof

                    sizeof 是运算符(不是函数),在编译时 就计算好了,用于计算数据空间的字节数

                • sizeof 不能用来返回动态分配的内存空间的大小

                • sizeof 常用于返回类型和静态分配的对象、结构或数组所占的空间,返回值和对象、结构、数组所存储的内容没有关系


                5.2.3 strlen、sizeof 简单对比

                数据类型

                strlen

                sizeof

                char a[10] = "ceph_";

                5

                10

                char *str = "I am learning ceph.";

                19

                8

                int a = 10;

                不支持

                4

                struct struct_simple

                {

                   int a = 1;

                   int b;

                }struct_test;

                不支持

                8

                函数

                不支持

                函数返回类型所占的空间大小,且函数的返回类型 不能是void


                作者

                有话说

                    从本文开始  您将开始接触计算机Linux 环境下 C语言 编程 世界,或许之前你对计算机Linux 环境下 C语言 编程一窍不通,但是接下来我会慢慢为您讲述Linux 环境下 C语言 编程相关的知识,尽量根据文章的难易程度先后发布相关文章!感谢您的阅读,希望有所收获! 



                微信公众号 欢迎 扫码 关注







                ----------------------------------------------------------------------------------------------------------------------
                我们尊重原创,也注重分享,文章来源于微信公众号:石头逍遥,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
                ----------------------------------------------------------------------------------------------------------------------

                鲜花

                握手

                雷人

                路过

                鸡蛋

                yafeilinux和他的朋友们微信公众号二维码

                微信公众号

                专注于Qt嵌入式Linux开发等。扫一扫立即关注。

                Qt开源社区官方QQ群二维码

                QQ交流群

                欢迎加入QQ群大家庭,一起讨论学习!

                我有话说......