将u_char转换为char

时间:2014-08-13 11:39:32

标签: c char

我有一个函数返回u_char数组中的值。有没有办法将其转换为char字符串。

这就是我所拥有的:

u_char *buf = NULL;
size_t out_len = 0;

out_len返回更新后购买我的功能的字符数。 此外,我不确定buf是否为空终止。 我试过了printf("%.*s",buf_len, buf);,但似乎没有用。

1 个答案:

答案 0 :(得分:0)

据我所知,printf("%.*s", buf_len, buf);将查找以NULL结尾的字符串。

一种解决方案是使用strncpy将所有字​​符复制到数组中。

strncpy(my_array, (const char *)buf, buf_len);

确保my_array大到足以容纳buf和NULL字符。