Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误:从';施工进度*和#x27;至';字节';失去精确性?_C++_C_Avr - Fatal编程技术网

C++ 错误:从';施工进度*和#x27;至';字节';失去精确性?

C++ 错误:从';施工进度*和#x27;至';字节';失去精确性?,c++,c,avr,C++,C,Avr,错误在这一行: dataArray[iLedMatrix][iRow] |= (byte)(bufferPattern[iRow]) & (1<<7); dataArray[iLedMatrix][iRow]|=(字节)(bufferPattern[iRow])&(1您正在尝试从指针类型转换为字节。指针类型通常表示为4字节(32位操作系统)或8字节(64位),您试图将其地址值转换为1字节。您试图将指针类型转换为字节。指针类型通常表示为4字节(32位操作系统)或8字节(64

错误在这一行:

dataArray[iLedMatrix][iRow] |=  (byte)(bufferPattern[iRow]) & (1<<7);

dataArray[iLedMatrix][iRow]|=(字节)(bufferPattern[iRow])&(1您正在尝试从指针类型转换为字节。指针类型通常表示为4字节(32位操作系统)或8字节(64位),您试图将其地址值转换为1字节。

您试图将指针类型转换为字节。指针类型通常表示为4字节(32位操作系统)或8字节(64位),您试图将其地址值转换为1字节。

此子表达式中存在问题

(byte)(bufferPattern[iRow])
变量bufferPattern的类型是
constpatternp*
,因此当应用索引器时,结果是patternp。类型“patternp”是typedef to prog_uchar[],因此实际上这个表达式是

将程序强制转换为字节

Byte几乎可以肯定是一个单字节值,而prog_uchar*是平台特定的指针类型(4或8字节)。这确实会导致精度损失。也许您想取消引用此值

(byte)(*(bufferPattern[iRow]))

问题就在这个子表达式中

(byte)(bufferPattern[iRow])
变量bufferPattern的类型是
constpatternp*
,因此当应用索引器时,结果是patternp。类型“patternp”是typedef to prog_uchar[],因此实际上这个表达式是

将程序强制转换为字节

Byte几乎可以肯定是一个单字节值,而prog_uchar*是平台特定的指针类型(4或8字节)。这确实会导致精度损失。也许您想取消引用此值

(byte)(*(bufferPattern[iRow]))

bufferPattern[iRow]
解析为
patternp
,它是一个
程序[NUM\u ROWS]


因此,实际上您正在将数组(实现为指针)强制转换为字节。没有意义;幸运的是编译器警告您!

bufferPattern[iRow]
解析为
pattern p
,这是一个
程序[NUM\u ROWS]


因此,实际上您正在强制转换一个数组(实现为指针)一个字节。没有意义;幸运的是编译器警告过你!

你找到了问题和正确的解决方案。Thx,我的C有点生锈,我需要醒来!Thxin碰巧,因为平台是AVR-指针只有16位。你找到了问题和正确的解决方案。Thx,我的C有点生锈,我需要醒来!Thxin碰巧,因为平台是AVR-指针只有16位。谢谢,无法接受,因为你对原因的理解是正确的,但Jared得到了原因和解决方案。谢谢,无法接受,因为你对原因的理解是正确的,但Jared得到了原因和解决方案。