我有這個unsigned int
功能(它是任務給定功能)錯誤消息「從無效轉換‘無效*’到‘無符號整型’」
// read data from virtual memory
unsigned int read(const int index) {
return speicher[index];
}
在speicher[index]
是一個數字,我必須解碼4個組件。第一個組件的值是speicher[index] mod 16
,第二個組件的值是(speicher[index])/(16*16)mod16
我想的等等。
其他示例與錯誤消息。也許我不明白這個功能是什麼:
對我來說功能read(const int index)
應該返回一個無符號整數,我可以像程序中的「正常」其他無符號整數一樣使用。
unsigned int index = 0;
unsigned int test = 1;
do {
unsigned int hexzahl = read(index);
test = read(index);
index = index + 1;
} while (index <= 255 && read(index) != 0);
// 37 actually i want, that the program breaks if the content of read(index) is 0
我無法理解的錯誤消息:
main.cpp: In function ‘int main()’:
main.cpp:37: error: ISO C++ forbids comparison between pointer and integer
main.cpp:37: error: invalid conversion from ‘char* ()(const char, int)’ to ‘int’
main.cpp:37: error: initializing argument 1 of ‘unsigned int memory_read(int)’
推測'speicher'擁有'void *'。 – chris 2014-10-29 15:10:08
請將錯誤日誌粘貼在生成錯誤的行周圍的行號和確切代碼+/- 5行。 – 2014-10-29 15:10:55
'speicher'的類型是什麼? – clcto 2014-10-29 15:11:45