我具有以下结构:
const int MAX = 6;
typedef struct {
int num1;
int arr1[MAX];
int arr2[MAX];
int num2;
} MyStruct;
我初始化该数组的方式如下:
MyStruct myStruct = {1, {-1}, {2,-1}, 1};
但是对于第一个元素,出现以下错误:
无效的初始化程序
第二个元素:
初始化器中的元素太多
我应该提到我使用的Uppaal版本是4.1.19
。
所以,问题是出在哪里?
答案 0 :(得分:0)
如Uppaal文档中所述,一些基本语法是从C ++继承的,包括数组初始化。但是,存在任何地方都不大胆的区别。假设我们在C ++中具有以下数组初始化:
"listening".
相反,如果我们在Uppaal中编写相同的语句,则会出现int arr[5] = {1,2,3}; // arr has type int[5] and holds 1,2,3,0,0
错误,我们需要像下面这样完全初始化数组:
wrong number of elements in array initialiser
这意味着您需要使用数组的大小(不要小于)初始化数组。