1. 数组的声明(一维和多维)
一维数组
int a[15];
二维数组
int a[16][5];
当访问越界地址时,读出的数据会是默认值,4值逻辑,如logic会返回x,2值逻辑如bit会读出0,而wire在没有驱动的时候会输出Z(高阻态)
2. 定宽数组初始化
int a[5] = '{ 0,1,2,3,4}; // ' 加 花括号作为声明方式
int a[5];
a[0:1] = '{1,2};
a = '{1,2,3,4,5};
a = '{1,2,default:1}; //其余三个都为1
a = '{5{1}}; //5个值都为1
int a[2][4] = '{'{1,2,3,4},'{5,6,7,8}}; //这里的[2]是最高维
3. 数据遍历
操作数组最常见的方式是使用for和foreach循环
$size()返回定宽数组的长度。
for()中的索引变量需要手动进行声明。
foreach()中的索引变量不用手动声明,sv会自动声明,且在这foreach循环中有效。