在linux内核空间中将char []转换为__be16类型

时间:2015-09-02 07:15:54

标签: linux linux-kernel linux-device-driver

我需要在linux内核空间中将char []转换为__be16类型。

我可以使用<div id="full_content"> <ul> <li>You Are strong.<span style=" font-weight:bold;" class="price"> 99.00</span>.</li> <li>You Are Normal.<span style=" font-weight:bold;" class="price"> 78.00</span></li> <li>You Are Week.<span style=" font-weight:bold;" class="price"> 65.34</span></li> </ul> </div> 将char []转换为int。同样的功能也适用于__be16,但有警告。类似地,__be16也可以使用任何预定义的函数吗?

示例:

char x [120] =“02”到__be16 xx

1 个答案:

答案 0 :(得分:1)

__be16实际上是network short int,因此您可以使用htons函数:

char* str = "123"; // input
int val;
__be16 nval; // output

kstrtoint(str, 10, &val);
nval = htons(val);

此外,可以使用cpu_to_be16代替htons