incompatible types when assigning to type 'creal_T {aka struct <anonymous>}' from type 'double' *(creal_T *)&((char_T *)chartInstance->c2_Pa2)[176] = c2_r1.m4; ^
时间: 2023-06-20 11:09:20 浏览: 271
GSM.rar_By Special Delivery_cept_world
这个错误是因为您尝试将一个 double 类型的值赋给一个 creal_T 类型的变量。creal_T 是一个结构体类型,由实部和虚部组成,而 double 只是一个普通的数值类型。所以,您需要将 double 类型的值转换为 creal_T 类型的值,然后再进行赋值。
在您的代码中,错误发生在以下这行代码:
```c
*(creal_T *)&((char_T *)chartInstance->c2_Pa2)[176] = c2_r1.m4;
```
这行代码的意思是将 c2_r1.m4 赋值给位于 c2_Pa2 数组中偏移量为 176 的位置的 creal_T 类型变量。要解决这个错误,您需要将 c2_r1.m4 转换为 creal_T 类型,然后再进行赋值。可以使用以下代码进行转换:
```c
*(creal_T *)&((char_T *)chartInstance->c2_Pa2)[176] = *((creal_T *)&c2_r1.m4);
```
这里使用了强制类型转换将 c2_r1.m4 转换为 creal_T 类型,然后再将其赋值给数组中的变量。
阅读全文