“下标访问越界”如何解决?
技术分享
发布于 2025-07-10 10:34:37
查看 2过去327天
问题现象
模型仿真过程中报错,下标访问越界。

解决方法
端口与端口在处理数组或矩阵类数据时,用户构建模型在仿真时,可能会出现下标访问越界,创建信号连接时,设置的访问端口数据位,超出了端口自身的维度。例如输出端口维度是长度为[3]的数组,实际构建信号线连接时访问了输出端口的y[4]。
具体解决方案可参考下列示例:
下标访问越界问题解决的关键在于以下几点
1.需要清楚报错的接口前后的端口维度信息。
2.构建端口与端口之间连线的时候,需要设置正确的信号线配置。

此处如果前后端口均为非标量则需要用户手动操作指定前后端口传输的信号。
1)如果设置为y[:]代表将信号完整传输、或接收,例如如果输出端口维度为[3],此时使用y[:]则代表将长度为[3]的数组完整输出,接收信号同理。
2)如果输出端口设置为y[3]代表的含义为将输出端口数组的第三个元素输出,并不是输出长度为3的数组的含义。同理若输入端口设置为y[3]代表的含义为将接收的数据放入输出端口数组中的第三位存储。
所属专栏:Sysplorer基础平台
产品信息:Sysplorer系统建模仿真环境