में Array.Copy() का उपयोग करने में विफल रहा मैं एक सी ++ डेवलपर हूं और हाल ही में WPF पर काम करना शुरू कर दिया है। खैर मैं अपने ऐप में Array.Copy() का उपयोग कर रहा हूं और ऐसा लगता है कि मैं वांछित परिणाम पूरी तरह प्राप्त नहीं कर पा रहा हूं।मेरे WPF ऐप
मैं अपने सी में किया था ++ अनुप्रयोग इस प्रकार है:
static const signed char version[40] = {
'A', 'U', 'D', 'I', 'E', 'N', 'C', 'E', // name
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , // reserved, firmware size
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , // board number
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , // variant, version, serial
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 // date code, reserved
};
unsigned char sendBuf[256] = {};
int memloc = 0;
sendBuf[memloc++] = 0;
sendBuf[memloc++] = 0;
// fill in the audience header
memcpy(sendBuf+memloc, version, 8); // the first 8 bytes
memloc += 16; // the 8 copied, plus 8 reserved bytes
मैं इस प्रकार के रूप में मेरे WPF (सी #) अनुप्रयोग में समान आपरेशन किया:
Byte[] sendBuf = new Byte[256];
char[] version =
{
'A', 'U', 'D', 'I', 'E', 'N', 'C', 'E', // name
'0', '0', '0', '0', '0', '0', '0', '0' , // reserved, firmware size
'0', '0', '0', '0', '0', '0', '0', '0' , // board number
'0', '0', '0', '0', '0', '0', '0', '0' , // variant, version, serial
'0', '0', '0', '0', '0', '0', '0', '0' // date code, reserved
};
// fill in the address to write to -- 0
sendBuf[memloc++] = 0;
sendBuf[memloc++] = 0;
// fill in the audience header
Array.Copy(sendBuf + memloc, version, 8); // the first 8 bytes
memloc += 16;
लेकिन यह मुझ पर एक त्रुटि फेंकता Array.Copy(sendBuf + memloc, version, 8);
Operator '+' cannot be applied to operands of type 'byte[]' and 'int'
के रूप में।
यह कैसे प्राप्त कर सकता है ???? :) कृपया मदद करें :)
यह सही है। सी # में पागल अंतर्निहित सरणी नहीं है-> पॉइंटर रूपांतरण हर किसी को भ्रमित करने के लिए। – chris
@ क्रिस: फिर हम इसे दोस्त कैसे प्राप्त कर सकते हैं? :) कोई वैकल्पिक तरीका? –
मैं पूछने वाला व्यक्ति नहीं होगा। मैं अभी तक सी # के साथ बहुत अनुभवी नहीं हूं, लेकिन मुझे सी/सी ++ की त्रुटियों के बारे में कुछ चीज़ों को संभालने का तरीका पसंद है। – chris