Avatar billede tzr Nybegynder
09. juli 2001 - 00:53 Der er 13 kommentarer og
1 løsning

Tid

Et lille newbie spg:
Hvordan læser jeg tiden på systemet i C++ ?

/Kenneth
Avatar billede bbs Nybegynder
09. juli 2001 - 12:28 #1
Avatar billede tzr Nybegynder
09. juli 2001 - 15:16 #2
nu ville jeg egentlig bare gerne vide hvilke includefiler og kommandoer jeg skulle bruge i MSVC++
Avatar billede mickni33 Nybegynder
09. juli 2001 - 19:40 #3
Bprland builder version

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  Label1->Caption = AnsiString(\"The time is  \") + TimeToStr(Time());

}

//////////////////////////////////////////////////
Standard dos version i borland c++ 5.02

#include <dos.h>
void gettime(struct time *timep);
void settime(struct time *timep);


struct time {
  unsigned char ti_min;      /* minutes */
  unsigned char ti_hour;    /* hours */
  unsigned char ti_hund;    /* hundredths */
  unsigned char ti_sec;      /* seconds */
};

Avatar billede wisen Nybegynder
10. juli 2001 - 15:46 #4
Prøv at kikker her : http://www.eksperten.dk/spm/67134
Avatar billede kamikaze Nybegynder
10. juli 2001 - 22:49 #5
i MSVC++ vil jeg foreslå dig at bruge windows API-kaldet GetSystemTime. DVS:

SYSTEMTIME sTime;
GetSystemTime(sTime);

/////////////////////////////

//*** LPSYSTEMTIME er en struct som flg:

typedef struct _SYSTEMTIME {  // st 
    WORD wYear;
    WORD wMonth;
    WORD wDayOfWeek;
    WORD wDay;
    WORD wHour;
    WORD wMinute;
    WORD wSecond;
    WORD wMilliseconds;
} SYSTEMTIME;

Dvs. sTime.wHour holder timer
    sTime.wMinute holder minutter osv.osv
Avatar billede kamikaze Nybegynder
10. juli 2001 - 22:52 #6
UPS.........

Der skal stå:

SYSTEMTIME sTime;
GetSystemTime(&sTime);
Avatar billede kamikaze Nybegynder
10. juli 2001 - 22:55 #7
Da dette er SYSTEM tiden, er det ikke den der står på dit ur. For at få den lokale tid, skal du bruge:

GetLocalTime(&sTime);
Avatar billede tzr Nybegynder
13. juli 2001 - 03:33 #8
kamikaze >> Jeg får stadig 28 kompileringsfejl
Avatar billede mickni33 Nybegynder
13. juli 2001 - 08:34 #9
Hvis der er så mange fejl tyder det på at du har glemt at include nogle biblioteker. prøv

#include <dos.h>
#include <stdio.h>
#include <time.h>

Avatar billede wisen Nybegynder
13. juli 2001 - 09:00 #10
tzr >> Prøv at poste noget af din kode, så vi kan se hvad du laver....
Avatar billede tzr Nybegynder
13. juli 2001 - 14:58 #11
okay, her er helt præcist hvad jeg har skrevet:

#include <iostream.h>
#include <dos.h>
#include <stdio.h>
#include <time.h>

typedef struct _SYSTEMTIME
{
    WORD wYear;
    WORD wMonth;
    WORD wDayOfWeek;
    WORD wDay;
    WORD wHour;
    WORD wMinute;
    WORD wSecond;
    WORD wMilliseconds;
} SYSTEMTIME;


void main()
{
    SYSTEMTIME sTime;
    GetSystemTime(&sTime);

    cout << sTime.wMinute << endl;
}
Avatar billede kamikaze Nybegynder
13. juli 2001 - 21:26 #12
Du skal IKKE skrive typedef struct _SYSTEMTIME osv...
Dette er Windows typedef, som du kan instantiere. Grunden til at jeg har vist den, er kun at du kan se hvad den består af. \"cout << ...\" er til konsol-programmering (DOS), og kan ikke bruges hvis du har lavet en Win32-applikation.

ALTSÅ:

Du skal lave en konsol-applikation, og skrive:

#include <iostream.h>
#include <conio.h>
#include <windows.h>

void main()
{
    SYSTEMTIME sTime;
    GetSystemTime(&sTime);

    cout << sTime.wMinute << endl;
    getch();
}

----

Hvis du downloader Borland C++ compiler 5.02(www.borland.com, gratis) virker det HELT sikkert... Er ikke lige i nærheden af MSVC++.
Avatar billede tzr Nybegynder
14. juli 2001 - 01:53 #13
og hvad gør getch() ?
Avatar billede tzr Nybegynder
14. juli 2001 - 02:22 #14
okay, har fundet ud af hvad en gør da
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester