回答
,我發現該解決方案是使用的功能:
void * memcpy (void * destination, const void * source, size_t num);
還有一個功能:
void * memset (void * ptr, int value, size_t num);
在我的代碼使用memcpy,它工作正常。感謝所有回答我的問題的人
如果您想將源中的單個uint8_t
轉換爲目標中的單個uint32_t
,那實際上非常簡單。只需創建目標數組,然後將值複製到一個循環中:
uint8_t *source;
size_t source_count; /* Number of entries in the source */
uint32_t *dest = malloc(sizeof(*dest) * source_count);
for (int i = 0; i < source_count; i++)
dest[i] = source[i];
非常感謝。這很簡單:) –
您的標題提到了字符串,但您的問題文本沒有。這很混亂。
如果你有4個8位整數,你可以將它們合併成一個單一的32位像這樣:
const uint8_t a = 1, b = 2, c = 3, d = 4;
const uint32_t big = (a << 24) | (b << 16) | (c << 8) | d;
此預定他們像這樣,其中字母表示從上面的變量位:
0xaabbccdd
換句話說,a
被認爲是最重要的字節,並且d
最少。
如果你有一個數組,你當然可以這樣做在一個循環:
uint32_t bytes_to_word(const uint8_t *bytes)
{
size_t i;
uint32_t out = 0;
for(i = 0; i < 4; ++i)
{
out <<= 8;
out |= bytes[i];
}
return out;
}
上述假設bytes
有四個值。
感謝您的解釋。我用了一個很好的詞來解釋我的需要。這可以幫助我很多。非常感謝您 –
@NounouNou如果這有幫助,請投票和/或接受。 – unwind
- 1. 轉:將字符串數組轉換爲Json數組字符串
- 2. 將字符串數組轉換爲字符串數組
- 3. 注意:數組到字符串轉換將數組轉換爲字符串
- 4. 將json轉換爲數組php將數組轉換爲字符串轉換
- 5. 將字符串轉換爲int數組
- 6. MongoDB將字符串轉換爲數組
- 7. 將PHP字符串轉換爲數組
- 8. 將javascript字符串轉換爲數組
- 9. 將字符串轉換爲json數組
- 10. 將數組轉換爲字符串Javascript
- 11. 將字符串轉換爲數組(android)
- 12. 將數組值轉換爲字符串
- 13. PHP將字符串轉換爲數組
- 14. 將Python數組轉換爲字符串
- 15. 將int轉換爲字符串數組
- 16. 將JSONArray轉換爲字符串數組
- 17. PHP:將數組轉換爲字符串?
- 18. JS將字符串轉換爲數組
- 19. 將字符串數組轉換爲ImageButton
- 20. 將字符串轉換爲數組
- 21. 將Dictionary.keyscollection轉換爲字符串數組
- 22. 將數組轉換爲字符串
- 23. 將php字符串轉換爲數組
- 24. 將array.description字符串轉換爲數組
- 25. 將字符串轉換爲int數組
- 26. 將字符串數組轉換爲java.util.List
- 27. 將字符串轉換爲位數組
- 28. 將字符串轉換爲2d數組
- 29. 將Java字符串轉換爲數組
- 30. 將數組值轉換爲字符串
我對NesC一無所知,但是應該將源數組中的每個'uint8_t'都轉換爲目標中的一個'uint32_t'嗎?還是應該將源代碼中的四個'uint8_t'合併到目標中的單個'uint32_t'? –
是的,這是主意。就像在C中一樣,我想將整數數組轉換爲一個整數。 –
那麼,呃,你怎麼評論說,當Joachim和我的答案都有幫助時,他們做了*不同的事情*?混亂。 – unwind