我基本上是想用
来抽出时间struct timeval tv = { };
gettimeofday(&tv, NULL);
它有效。问题是,作为参数接受的函数的时间是const char *
所以我做了
const char *time;
time = &tv.tv_sec;
问题是,tv.tv_sec的类型为time_t,我需要将其插入
const char *time
将其传递给需要const char *
的函数我该怎么做?将整数放入const char * 我已经尝试过一些简单的方法来投射它,但是我不熟悉C
答案 0 :(得分:5)
当你发现自己需要将时间指针强制转换为char指针时,这是一个非常错误的暗示。你应该再看一下这个问题。
您没有描述接受const char *的其他函数,或者我会更好地了解正在发生的事情。
我怀疑您可能需要将时间整数转换为字符串并将指针传递给该字符串的开头。为此,您可能希望使用名为strftime的函数。
答案 1 :(得分:2)
要将整数格式化为字符串,您应该使用snprintf
。
例如:
char resultString[64];
snprintf(resultString, sizeof(resultString), "Current time : %d", tv.tv_sec);
答案 2 :(得分:1)
答案 3 :(得分:0)
检查sprintf
或snprintf
。