Форум программистов, компьютерный форум CyberForum.ru

Ввести дату (без времени) с компьютера - C++

Восстановить пароль Регистрация
 
jurati
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 2
18.04.2014, 21:29     Ввести дату (без времени) с компьютера #1
Добрый вечер.

Знаю, что есть фишка, которая может ввести локальное время и дату. Нужна помощь вот в чем:

есть функция в которой происходит ввод в поля структуры. в поле (*dl).beg должно заноситься сегодняшняя дата (без времени). Любая помощь была бы очень кстати. Ну и максимально чтобы было понятно

C++
1
2
3
4
5
6
7
8
9
10
void AddDeal(deal *dl){
    cout<<"enter deal order: ";
    cin>>(*dl).order; getchar();
    cout<<"enter deal months: ";
    cin>>(*dl).months; getchar();
    cout<<"enter deal time: ";
    cin.getline((*dl).time,12); 
    cout<<"enter deal beginning: ";
    cin.getline((*dl).beg,12); 
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2014, 21:29     Ввести дату (без времени) с компьютера
Посмотрите здесь:

Сформировать и ввести упорядоченный односвязный список без использования list C++
C++ 1. Написать программу, которая предлагает пользователя ввести дату рождения
C++ Написать программу, которая предлагает пользователю ввести часы и минуты и выводит в консоль соответствующее введенному времени приветствие
Написать программу, которая предлагает пользователю ввести дату в формате YYYY MM DD и выводит в консоль, следующую за ней дату C++
C++ Написать программу, которая предлагает пользователю ввести дату в формате YYYY MM DD и выводит в консоль, следующую за ней дату
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4315 / 3736 / 1259
Регистрация: 14.04.2014
Сообщений: 14,642
18.04.2014, 21:40     Ввести дату (без времени) с компьютера #2
Не ясно. Ты хочешь чтобы пользователь ввёл или получить системные дату время?
MastAKK
 Аватар для MastAKK
144 / 135 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
18.04.2014, 22:03     Ввести дату (без времени) с компьютера #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Почему
C++
1
(*dl).order //к примеру
А не
C++
1
dl->order;
?

К вопросу:
Если нужно просто получить текущую дату, то:
C++
1
2
3
4
5
time_t rawtime;
struct tm* timeinfo;
time (&rawtime);
timeinfo = localtime (&rawtime);
std::cin << "Day:" << timeinfo->tm_mday << "\nMonth:" << timeinfo->tm_mon << "\nYear:" << timeinfo->tm_year;
молодой_горячий
1 / 1 / 0
Регистрация: 26.04.2011
Сообщений: 42
18.04.2014, 22:41     Ввести дату (без времени) с компьютера #4
MastAKK, допустим есть функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void getdate()
{
time_t rawtime;
struct tm* timeinfo;
time (&rawtime);
timeinfo = localtime (&rawtime);
std::cin << "Day:" << timeinfo->tm_mday << "\nMonth:" << timeinfo->tm_mon << "\nYear:" << timeinfo->tm_year;
 
}
 
void setdate(int a,int b,int c)
{
 
}
Как написать функцию setdate, чтобы она меняла 3 значения локальной даты(день,месяц,год). Тобишь, чтобы после вызова setdate, я вызвал getdate и на экран вывело новую дату?

Добавлено через 32 минуты
Я писал так, но это не правильно =\
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
void GetDate(time_t t,tm *tk)
{
   
   time(&t);
   tk=localtime(&t);
   cout<<"Local date: ";
   if ((1+tk->tm_mon)<10) cout << tk->tm_mday<<".0" <<1+tk->tm_mon <<" " <<1900+tk->tm_year  << endl;
        else  cout << tk->tm_mday<<1+tk->tm_mon <<" "<< 1900+tk->tm_year  << endl;
}
 
void SetDate(int day, int month, int year,time_t t,tm *tk )
{ 
   time(&t);
   tk=localtime(&t);
   tk->tm_mday = day;
   tk->tm_mon = month;
   tk->tm_year = year;
}
int main(int argc, char *argv[])
{
    time_t vTime;
    tm *vTK;
    time(&vTime);
    vTK=localtime(&vTime);
    int vDay, vMonth, vYear;
if (argc==2)
   {
       if (!strcmp(argv[1],"getdate")) GetDate(vTime,vTK);
       if (!strcmp(argv[1],"setdate")) { 
                                        cout<<"enter day : "; cin>>vDay;
                                        cout<<"\nenter month : "; cin>>vMonth;
                                        cout<<"\nenter year : "; cin>>vYear;
                                        SetDate(vDay, vMonth, vYear,vTime,vTK);
                                       }
   }
Надеюсь на Вашу помощь.
jurati
0 / 0 / 0
Регистрация: 18.04.2014
Сообщений: 2
19.04.2014, 21:21  [ТС]     Ввести дату (без времени) с компьютера #5
MastAKK, большое спасибо. Очень помогли
MastAKK
 Аватар для MastAKK
144 / 135 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
19.04.2014, 23:07     Ввести дату (без времени) с компьютера #6
молодой_горячий, вы хотите поменять дату на компьютере или лишь значения переменных в структуре изменить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.04.2014, 02:11     Ввести дату (без времени) с компьютера
Еще ссылки по теме:

Почему я не могу ввести строчку используя меню, хотя программа работает без него C++
Слежка за клавиатурой другого компьютера в реальном времени C++
C++ Нужно ввести дату в формате dd.mm.yyyy - не работает присваивание

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
молодой_горячий
1 / 1 / 0
Регистрация: 26.04.2011
Сообщений: 42
20.04.2014, 02:11     Ввести дату (без времени) с компьютера #7
MastAKK, уже разобрался, спасибо
Yandex
Объявления
20.04.2014, 02:11     Ввести дату (без времени) с компьютера
Ответ Создать тему
Опции темы

Текущее время: 06:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru