int n=50;
unsigned char bytes[4];
unsigned char *buffer=(unsigned char*)malloc(sizeof(int));
bytes[0]=(n>>24)&0xFF;
bytes[1]=(n>>16)&0xFF;
bytes[2]=(n>>8)&0xFF;
bytes[3]=n&0xFF;
memcpy(buffer,bytes,sizeof(bytes));
這不會將字節數組複製到緩衝區。任何想法爲什麼?可以做什麼將數組複製到緩衝區?在C中使用memcpy複製無符號字符數組
當我嘗試在memcpy之後打印sizeof(緩衝區)或內容時,它顯示0並且沒有內容。 我需要將它複製到緩衝區,因爲我有其他信息要與字節一起追加到緩衝區。
請顯示一個完整的代碼示例,說明字節未被複制。 –
聲明'buffer'在哪裏? –
如何定義緩衝區?你如何確定緩衝區沒有從字節[]中複製?請更多代碼。 – Prabhu