Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

$splash$

Treue Seele

  • »$splash$« ist der Autor dieses Themas

Beiträge: 172

Wohnort: BW

Beruf: Schüler

  • Private Nachricht senden

1

11.03.2005, 16:06

TCHAR in string umwandeln

moin
ich hab mir auf win-api.net einen code zur erkennung der uhrzeit runtergeladen der hat aber als string TCHAR wie wandle ich das in ein "normalen" string um ??? mit "==" oder so funtzt's nicht

hier der code:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
Zeit:
#define NUM_ELEMENTS(x) (sizeof((x)) / sizeof((x)[0]))

SYSTEMTIME st;
TCHAR szTime[32];

// Uhrzeit holen

GetLocalTime (&st);
// Die Uhrzeit formatiert in den String szTime schreiben

GetTimeFormat (LOCALE_USER_DEFAULT, LOCALE_USE_CP_ACP, &st, NULL, 
            szTime, NUM_ELEMENTS(szTime));
MessageBox (NULL, szTime, "Aktuelle Zeit:" , NULL


hoffe ihr habt ein paar gute antworten ;)

2

11.03.2005, 16:47

Ich weiß jetzt zwar nicht, was du mit "normalem" String meinst, aber ein TCHAR ist kompatibel mit einem char. Das lässt sich durch Funktionen, die einen char als Parameter verlangen, gut testen(wie auch MessageBox).

PD

unregistriert

3

11.03.2005, 16:48

== eh nicht, der is nur zum vergleichen zweier werte da.

Soweit ich weiß ist TCHAR nur en define das jenachdem ob man unicode benutzt char oder w_char einsetzt. Das bedeutet, solange du kein Unicode benutzt arbeitest du da mit char.

Das selbe gilt übrigens für die meisten Windows (String) Funktionen: Die haben 2 versionen, eine char und eine w_char version. Desweiteren ein define das die entsprechenden Namen einsetzt bei unicode bzw. ohne unicode.

4

11.03.2005, 17:45

Naja, es ist ein define, das einfach wchar_t einsetzt. Und das ist wahrscheinlich für Unicode/nicht Unicode da.

PD

unregistriert

5

11.03.2005, 19:12

ach fu, meinte wchar_t ^^

6

12.03.2005, 14:15

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//auszug ausm msdn:

typedef struct _SYSTEMTIME {
  WORD wYear;
  WORD wMonth;
  WORD wDayOfWeek;
  WORD wDay;
  WORD wHour;
  WORD wMinute;
  WORD wSecond;
  WORD wMilliseconds;
} SYSTEMTIME, 
*PSYSTEMTIME;
//-------------------


//...

//zeit in "normalen" string schreiben

char theTime[512];
SYSTEMTIME st;
GetLocalTime (&st); 
sprintf(theTime, "%02i::%02i %02i", st.wHour, st.wMinute, st.wSecond);

Werbeanzeige