将数据存储在c ++

时间:2015-06-11 08:25:42

标签: c++ buffer uint32-t

我在c ++上有一个简单的函数,它有两个参数:

read(uint32_t *buffer, uint32_t num_words){
    ...
}

当我尝试调用它时,我收到错误,因为我传递的参数可能是错误的unsigned long*, unsigned long

uint32_t addr = 5;
uint32_t buf[5];
read(buf,addr);

我不确定为什么这是错的。 有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题可能是因为编译器无法将指针转换为const指针(即数组变量)。更改read to read的原型(uint32_t buffer [],uint32_t num_words).. 这将有效。