Почему строка, возвращаемая 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()
поместить его туда в первую очередь?