错误:表达式不是可赋值的c++结构
Error: Expression is not assignable C++ struct
我正在为FPGA编写c++中的正常带宽内核,这是从主机内存中读取某些内容并将其写回主机中的不同位置。我正在使用结构体,其中一个元素是输入和输出缓冲区的地址。高级合成工具对以下代码中的最后一行给出错误。
struct addr_struct {
ap_uint<64> address;
ap_uint<32> size;
ap_uint<16> type;
ap_uint<16> flags;
};
struct addr_struct CA_INPUT;
struct addr_struct CA_OUTPUT;
din_mem = 0x00;
dout_mem = 0x00;
ap_uint<32> i;
ap_uint<512> temp;
ap_uint<512> *din_mem;
ap_uint<512> *dout_mem;
for(i=0; i<2048; i++){
temp= (ap_uint<512> *)(din_mem + CA_INPUT.address + i*64);
(ap_uint<512> *)(dout_mem + CA_OUTPUT.address + i*64) = temp;}
我假设您想要分配给dout_mem
中的指针,因此在(ap_uint<512> *)
之前缺少解引用(注意开头的星号):
*(ap_uint<512> *)(dout_mem + CA_OUTPUT.address + i*64) = temp;
相关文章:
- 为"adjacent"变量赋值时出现问题
- C++中的赋值发生,尽管右侧出现异常
- 用C++中的sscanf赋值
- 为std::string的某个索引赋值
- 重载Singly Linked List中的赋值运算符
- 为什么我必须在C++中添加一个赋值符号来声明一个数组
- gtest_使用setargpointee在函数中赋值
- 非常量变量只读位置的赋值
- 使用赋值运算符重载从类中返回jobject
- C++数据文件、数组和计算赋值
- 为什么在使用转换构造函数赋值后调用C++类的析构函数?
- 全局作用域中函数指针的赋值
- 错误:在为指针赋值时,void值没有被忽略
- 标准库类型的赋值运算符的引用限定符
- 关于 c++ 函数中指针赋值的简单问题
- 复制构造函数、赋值运算符C++
- 标准::变体的赋值运算符
- cin >> int 给定一个字符串将 int 赋值为 0
- if 子句中的赋值不起作用
- 复制包含C++所有元素的对象!(构造函数和赋值,最佳实践?