為什麼當我有 0x00 時我的數據被剪切?

克萊門特

我想將uint8_t數組複製uint8_t指針

uint8_t temp_uint8_array[] = {0x15, 0x25, 0x32, 0x00, 0x52, 0xFD};

uint8_t* Buffer = temp_uint8_array;

現在 :

Buffer = {0x15, 0x25, 0x32};

所以我知道我的數據是因為 0x00 被截斷了,有什麼解決辦法嗎?


由於我可以訪問要復制的數據的大小,因此我嘗試使用

memcpy(Buffer, &temp_uint8_array, local_length);

但它不起作用

比特幣

memcpy 不正確:

memcpy(Buffer, &temp_uint8_array, …

由於 temp_uint8_array 是一個數組,那麼你不應該用 & 前綴:

memcpy(Buffer, temp_uint8_array,…

緩衝區指向 temp_iint8_array,因此 memcpy 除了擦除同一內存位置中的字節外什麼也不做。您的 IDE 可能認為 uint8 數組可以作為字符字符串處理並顯示內容直到 0x00。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么通过SPI向我的Class 10 SD发送CMD58返回0x01而不是0x00?

為什麼當數據類型匹配時外鍵會給我一個錯誤

為什麼我的輸出結果在 Python 中應該以相反的順序顯示確切數字時不顯示 0。沒有將參數變量更改為字符串

當我們有 flex-direction: column 時,為什麼項目不會自動縮小?

為什麼當我將變量放在帶有 + 操作數的向量中時我的代碼不起作用

Javascript,當我們為只讀數據屬性(例如字符串長度)賦值時會發生什麼?

當我的簡單Go程序運行時,為什麼結果是死鎖?

為什麼我在抓取實時數據時得到一個空列表?

為什麼當我運行 javascript 函數時我的 RAM 會超載?

當我包含驗證數據時,為什麼模型訓練花費的時間要長得多?

為什麼我的程序不斷收到“raycaster”警告?當我什至不使用它時

為什麼刷新頁面時我來自 apollo 服務器的數據沒有顯示?

為什麼當我將 Pandas 數據框用作具有多處理功能的函數的輸入時它不會改變

為什麼使用 jQuery 函數的按鈕沒有用類隱藏我的 div:.red、.yellow - 當我點擊它時?

為什麼我添加後沒有顯示任何數據?

為什麼當我將數據發送到我的 firebase 時我的 android studio 應用程序崩潰

當我使用 DefaultTableModel 從 CachedRowSet 填充 jTable 時,為什麼 JTable 的列標題沒有更新?

\0 字符是實際的 0x00 字節嗎?為什麼這不會破壞帶有“0”的 int 數組?

當我向數組添加新項目時,為什麼我的列表沒有更新?

當我根本沒有觸及我的 .yml 時,為什麼會出現服務依賴錯誤?

為什麼我不能寫“if mod = 0”?

當 n 被定義為正整數時,為什麼 sympy 不評估 sin(n* pi) = 0 和 cos(n * pi) = (-1)^n?

為什麼我的數據框顯示 X 行,但我的 DataFrame.tail 以小得多的數字結尾

為什麼當我切換到粘性時導航欄中的字體顏色沒有改變?

當列表包含零時,為什麼 foldr 函數給我一個否定結果?

為什麼當列表包含零時 foldr 函數給我一個否定的結果?

為什麼當我更改複製的列表時原始列表會更改(PYTHON)

(Kotlin) 為什麼當我按下表單片段應用程序時會關閉?我有一項活動

當我嘗試將它添加到數組時,為什麼我的對像被複製?