【发布时间】:2014-07-19 15:24:39
【问题描述】:
我有一种方法可以接受const char *,如下所示 -
bool get_data(const char* userid) const;
下面是我的 for 循环,我需要通过传递 const char * 来调用 get_data 方法。目前下面的 for 循环使用 uint64_t。我需要将此uint64_t 转换为const char *,然后传递给get_data 方法。
for (TmpIdSet::iterator it = userids.begin(); it != userids.end(); ++it) {
// .. some code
// convert it to const char *
mpl_files.get_data(*it)
}
这里TmpIdSet 是typedef std::set<uint64_t> TmpIdSet;
所以我的问题是我应该如何将上述代码中的uint64_t 转换为const char *?
【问题讨论】:
-
“将数字转换为指针”是什么意思?如何将小猫转化为快乐的想法?
-
你试过
ltoa()吗? -
您真的希望将 64 位整数转换为字符串然后传递,还是只是想更改类型(这可能是未定义的行为)?
-
@JerryJeremiah 我希望将 64 位整数转换为字符串然后传递。实际上 C++ 不是我的第一语言,所以对预定义函数不太了解。我做了一些搜索,也找不到解决方案。
-
一个 UUID 是 128 位的,你怎么把它装进
uint64_t?
标签: c++ char-pointer