UE4 c++ uint8_t* toFString
今天写插件遇到一个格式转换的问题,困扰了好长时间,查了查资料解决了,现在记录一下
源数据是这样的
需要将数据 endpointArray[i].endpointUrl.data 打印出来。
直接上结果:
UA_EndpointDescription* endpointArray ;
// endpointArray 获取数据来源并赋值balabala。。。。。
endpointArraySize = 4;
for (size_t i = 0; i < endpointArraySize; i++) {
UE_LOG(LogTemp, Warning, TEXT("URL of endpoint %i is %s\n"), (int)i , UTF8_TO_TCHAR(reinterpret_cast<const char*>(endpointArray[i].endpointUrl.data)));
}
备注:
reinterpret_cast强制类型转换符
用法:
new_type a = reinterpret_cast <new_type> (value)
将value的值转成new_type类型的值,a和value的值一模一样。比特位不变
reinterpret_cast用在任意指针(或引用)类型之间的转换;以及指针与足够大的整数类型之间的转换;从整数类型(包括枚举类型)到指针类型,无视大小。
需要注意的是:reinterpret_cast<xx>(yyy),xx与yyy必须有一个值为指针类型。