如何将java的int类型的4个字符变成C++需要的int类型
(有的时候我们需要在不同的语言程序之间进行通信,当我们从java程序里面去获得字符时,会遇到java的int类型,通常放在4个字符里面,然后C++语言的程序需要转换,才能得到正确的int类型)
int for_java_char4_to_int(const char* char_4bit_value)
{
size_t len =strlen(char_4bit_value);
if(4 != len)
{
// return -1;
}
int v1 =0;
int v2 =0;
int v3 =0;
int v4 =0;
char a[4] ={0};
try
{
v1 =(int)char_4bit_value[0];
v2 =(int)char_4bit_value[1];
v3 =(int)char_4bit_value[2];
v4 =(int)char_4bit_value[3];
a[0]=v1;
a[1]=v2;
a[2]=v3;
a[3]=v4;
}
catch (std::exception &e)
{
std::cout << "Caught an exception of an unexpected type: "
<< e.what () << '\n';
}
int result_value =0;
result_value = htons(*((short *)a+1));
return result_value;
}