微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于动态数据

关于动态数据

时间:10-02 整理:3721RD 点击:
bit [7:0] b2[];
        b2=new[11];
        b2[0] = 100;
        b2[1] = 101;
        b2[10] = 111;
        b2[11] = 121;
        b2[12] = 131;
        $display("%5d%5d%5d%5d%5d%5d",b2[10],b2[11],b2[12],b2[13],b2[14],b2[15]);
在quesetasim中运行这段代码,竟然没有错;打印的结果是:111  0    0    0    0    0.
给动态数组new了11个单位的空间,它可以找到12,13的地址(可能是按字节大小,向后寻移指针),
而打印的时候,12,13的位置又变成了0呢?

兄弟啊,因为你只new[11],所以只分配了11个空间(index从0-10)。所以b2[10] 能正确读写,11,12,13,..都不行。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top