当前位置: 首页 > news >正文

C语言学习(days09)

二维数组的定义与特性

二维数组的声明格式为:

类型说明符 数组名[表达式1][表达式2];

   [下标1]表示行索引,[下标2]表示列索引。

        二维数组可视为由多个一维数组组成,a[0]表示第0行的首地址(即一维数组地址)a[0][0]表示第0的第一个元素

初始化规则

        行数可省略,编译器根据初始值自动推导:

int a[][3] = {{1, 2, 3}, {4, 5, 6}}; // 合法

        列数不可省略,否则编译错误:

int a[2][] = {{1, 2}, {3, 4}}; // 错误
计算行列数

        行数:总字节数除以单行字节数:

int rows = sizeof(a) / sizeof(a[0]);

        列数:单行字节数除以元素字节数:

int cols = sizeof(a[0]) / sizeof(a[0][0]);

二维字符数组

        用于存储字符串集合,每行代表一个字符串:

char strs[][10] = {"hello", "world"};
int rows = sizeof(s) / sizeof(s[0]);

函数的基本概念

函数用于模块化代码,降低耦合性,提高复用性。

定义格式
类型标识符 函数名(形式参数表列) {声明部分;语句部分;
}

        若未指定返回类型,默认为int

        函数不可嵌套定义,但可嵌套调用。


断言(assert)

用于调试阶段检查条件,若条件为假则终止程序:

#include <assert.h>
int x = 10;
assert(x == 10); // 继续执行
assert(x == 5);  // 终止程序


关键注意事项

函数返回值不能是数组,但可返回数组地址。

http://www.dtcms.com/a/295046.html

相关文章:

  • useEffect
  • Java异常处理核心原理与最佳实践
  • 数据驱动未来:构建强大AI系统的基石
  • QPixmap::scaled参数说明
  • 床上肢体康复机器人的机械结构设计cad【7张】三维图+设计说明书
  • 1、黑马点评复盘(短信登录-Session或Redis实现)
  • pytest简单使用和生成测试报告
  • FCW(Front Collision Warning)前碰撞预警功能介绍
  • 借助DataStream和多路复用实现可观察性
  • mybatis条件语句的查询与注解的使用以及mybatis与servelet结合查询
  • 数据结构系列之AVL树
  • 主要科技公司与新创公司 AI Agent 进展调研
  • Nginx 日志分析与慢请求排查
  • Symantec sep配置自定义yara规则
  • 背包九讲 详细解析与 C++ 实现
  • 不一样的Mysql安装方式
  • (8)Step 7 实现泵组主备切换与PID变频调节(压力——频率)
  • LangChain面试内容整理-知识点28:LangChain部署实践
  • 【JavaSE】正则表达式学习笔记
  • 二、计算机网络技术——第4章:网络层
  • 跟著Qcadoo MES系统学习产品设计001
  • 从订单簿到AMM:一场去中心化交易所的技术革命
  • 彻底掌握双列集合——Map接口以及实现类和常用API及其底层原理
  • 1688商品数据采集的应用行业与接入方式
  • 人工智能之数学基础:事件间的运算
  • JVM、Dalvik、ART垃圾回收机制
  • OpenLayers 快速入门(八)事件系统
  • java基础(the 15th day)
  • freelancer是什么用工模式?有什么好处和坏处呢?
  • Log4j2漏洞vul-hub通关教程