为什么返回的字符串ctime()
有一个换行符(0x0A
)作为它的最后一个字符?例如,这段代码:
#include <iostream>
#include <cstdlib>
int main(int argc, char* argv[])
{
time_t now;
time(&now);
char* time_str = ctime(&now);
std::cout << time_str << "why is this on a new line?" << std::endl;
return 0;
}
...产生以下输出:
$ ./time.exe
Wed Oct 23 14:52:29 2013
why is this on a new line?
$
没什么大不了的; 我可以从字符串中删除最后一个字节,但为什么ctime()
要把它放在首位呢?