UE4 c++ uint8_t* toFString

今天写插件遇到一个格式转换的问题,困扰了好长时间,查了查资料解决了,现在记录一下

 

源数据是这样的

UE4 c++ uint8_t* toFString

UE4 c++ uint8_t* toFStringUE4 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必须有一个值为指针类型。