I discovered the trouble. I made a mistake. The correct code is included. One question, can one alternate legally between int [2] and long or must they be converted to each other? main() { char *t; long tod; time(&tod); t = ctime(&tod); /* weird behavior */ printf("%s\n", t); } -------