![]() |
[C/C++] String Array als Parameter in Funktion :/ (Neues Problem)
Das Neue Problem findet ihr hier im Edit:
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] Ich hab grad mit C bzw. C++ angefangen und bastel grad an einem Programm dass jede Stunde den Wallpaper ändert. Ich habe die Pfade zu dem Bild der jeweiligen Stunde in einem String array gespeichert. und möchte dann mit hilfe des arrays, der akutellen Stunde, und der ChangeBackground funktion jetzt den Hintergrund ändern, doch er meckert: Zitat:
Code:
//hier sind noch überall die <> rum, aber iwie zeigt der Wörter die in <> |
void ChangeBackground( const char * const Background )
bedeutet das die Funktion ChangeBackground einen const char Zeiger erwartet. Du übergibts im aber ein string. Das ist doch logisch das das nicht geht oder? Du kannst aber folgendes benutzen: ChangeBackground(reinterpret_cast<const char *>(aFiles[iStunde])); |
sry mein Internet laggt
|
Die Klasse string sollte die Methode c_str() beinhalten:
Code:
ChangeBackground(aFiles[iStunde].c_str()); |
habs jetzt Spontan so gelöst:
Eine Funktion zum umwandeln: Code:
char* string_convert ( string str ) { Code:
char* cBild; [EDIT] Problem2: Das Programm muss jetzt theoretisch in einer endlosschleife wiederholt werden, da aber nur jede Stunde eine Veränderung auftritt, ist das abrufen der Uhrzeit, schneller als der Sekundentakt, unsinn und arbeitspeicher fressend. Hat jemand einen Tipp, wie ich mein Programm ohne viel arbeitspeicher fressen zu lassen still und leise "im hintergrund" laufen lassen kann? (Im Moment ist es eine Konsolen anwendung) |
Du musst die Uhrzeit überwachen und zwar in einer Endlosschleife.
Aber überprüfe die Uhrzeit nur alle z.B. 30 Sekunden. Code:
The unix functions sleep and usleep are not available in their simple form. The windows function Sleep() may be used (note the capital S) but it introduces complexities. It requires two heavyweight include files that define a lot of global names, and the chances for a name clash are high. Unfortunately I do not know of any other way of making a pause in processing without using a tight loop that keeps the CPU fully occupied. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.