簡體   English   中英

無符號短數組到字符數組

[英]Unsigned Short Array to Char Array

我見過一些處理無符號短數組並在其中存儲“字符串”的代碼。 但我很好奇人們如何將無符號短數組中的字符串轉換或提取為字符數組,以便在printf() 中用於調試目的。

unsigned short a[5];
char b[5];

a[0] = 'h';
a[1] = 'e';
a[2] = 'l';
a[3] = 'l';
a[4] = 'o';

printf("%s\n", a);
// output is just the 'h'

根據我最近的理解,一個 unsigned short 是 2 個字節,所以 'h' 有一個 Null 終止符。 而通常使用 char 並且每個字符是 1 個字節。

有沒有一種好方法可以提取“字符串” 'hello' 並將其放入 char[] 以便稍后打印出來? 迭代無符號短數組並將值存儲到字符數組中?

如何轉換?:

char b[6];
for(size_t i = 0; i < 5; i++) b[i] = a[i];
b[5] = 0;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM