Aktywne Wpisy

czerwony_ptak +118
do wszystkich, którzy tak robią - po co dajecie lewy kierunkowskaz na rondzie ? co kogo obchodzi dokąd jedziecie ? ważne żeby poinformować kiedy się z tego ronda zjeżdża. dzisiaj napotkałem takiego delikwenta - jedzie i miga tym lewym i zjeżdża, cały czas świecąc lewym. da fak ?
#zalesie #polskiedrogi
#zalesie #polskiedrogi

Phallusimpudicus +858





void playFile(const char *filename){
}
i mam tablicę stringów:
String drums[22]{
"snare.wav", ....
}
co mógłbym zrobić żeby jak najszybciej i najwydajniej odpalać te pliki tą funkcją? Na razie mam tak i działa:
void playSample(byte i){
const char* pointer_to_string = drums[i].c_str();
playFile(pointer_to_string);
}
ale to chyba jest całkowicie naokoło rozwiązanie. Potrzebowałbym albo zdefniować tablicę jako "const char *" albo zmienić parametr funkcji na String, ktoś wie jak to zrobić?
(nazwy plików są stałe ale w trakcie programu inna funkcja przeskanuje inny folder i podmieni tablicę drums[22] na inne nazwy plików)
#arduino #elektronika ew. może ktoś z #csharp będzie wiedział?
Stringmocno ratuje życie albo coś, tak też może być, to wtedy zostaw jak jest.To jeszcze musi być kompatybilne z tym:
void add_filenames_to_array(Filec_str()zstd::stringzwraca typconst char*Twoje obecne podejście do odtwarzania plików dźwiękowych jest dobre, ale można je jeszcze nieco zoptymalizować. Aktualnie przekształcasz każdy element tablicy String w const char* za każdym razem, gdy wywołujesz funkcję playSample(). Możesz zoptymalizować to rozwiązanie, przechowując wcześniej przekształcone wskaźniki do stringów w tablicy, aby uniknąć zbędnego konwertowania przy każdym odtwarzaniu. Oto jak to zrobić:
// Zadeklaruj tablicę wskaźników do const char* i zainicjalizuj ją raz przy starcie programu.
const char*
ChatGPT
Jeśli chcesz zachować oryginalną tablicę String, ale przerabiać ją w locie bez konieczności utrzymywania osobnej tablicy wskaźników, możesz to zrobić, przechodząc przez konwersję String na const char* bezpośrednio w funkcji playSample(). Oto jak to zrobić:
cpp