task sticky(ref int array[50], int a, b);
function和task的每一个参数都有他的方向,input,ouput,inout或者ref。如果没有显式声明,则默认与前面的参数保持一致,如果前面没有参数,则默认为输入。上述代码中,第一个参数array的方向为ref,而后续a和b没有显式声明,所以将延续前者的方向,即为ref。
压缩数组表示一组连续的bit,而非压缩数组不是。在声明上,有下面的区别
bit [7:0] data ; // packed array of scalar bit types
real latency [7:0]; // unpacked array of real types
压缩数组只能由一位数据类型(bit,logic,reg)或枚举类型组成。非压缩数组能够由任意类型组成
logic[31:0] addr; //packed array of logic type
class record_c;
record_c table[7:0]; //unpacked array of record objects
你答对了吗
欢迎在留言区给出你的答案,正确答案将在下一期公布,或者到下面的文章获取答案