Нужна программа, которая уменьшает текущую дату на 1 день
#include <time.h>
#include <stdio.h>
void main
{
time_t t = time(NULL);
t -= 86400;
tm* t2 = localtime(&t);
char* str = asctime(t2);
printf("Вчерась было: %s\n", str);
}
а переход на летнее время поддерживается?
время-то локальное... вот если бы было gmtime написано, тогда - нет
Сука, он у меня tm не видит, ещё бы вызов который по дате время в секундах возвращал, чтобы не текущую дату, а заданную на 1 день уменьшать. Могёшь?
Такая программа уже есть в Unixе. Она называется date(1).
Я не под рутом, напиши плиз если можешь, как всё сделать чего я хочу
Thanks Vlad Borisoff
Что за "гэ" перед командой date?
Ну типа продвинутая версия date (GNU расширение):)
import java.util.Calendar;
import java.util.Date;
/**
* Created by IntelliJ IDEA.
* User: Yeldar.Nuralin
* Date: Apr 8, 2005
* Time: 9:18:23 AM
* To change this template use File | Settings | File Templates.
*/
public class Yesteday {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance;
calendar.setTimeInMillis(System.currentTimeMillis;
calendar.roll(Calendar.DAY_OF_MONTH, 1);
System.out.println("Вчера было: " + new Date(calendar.getTimeInMillis;
}
}
Оставить комментарий
Sebasten
Хочу простую, типа берём из argv 6 параметров yyyy mm dd hh mm ssпреобразуем в секунды, уменьшаем число секунд на 86400, преобразуем в нормальный формат и печатаем в виде yyyy mm dd hh mm ss (Ну вид не очень важен, главное чтобы все эти числа встретились). Хорошо бы было, что бы всё работало в Unixе
Заранее спасибо