ProtobufCAllocator *kvs_pb_allocator()
{
static ProtobufCAllocator allocator;
//do something here
return &allocator; //print the address, it is 0x2aaaaafc12c0
}
在另一个程序中调用这个函数(来自不同的文件):
ProtobufCAllocator *alloctor = kvs_pb_allocator();
//print the address, it is 0xffffffffaafc12c0
为什么会出现这个问题?我编写的另一个守护程序运行良好。就在这种情况下,它会打印错误的值。