Aktywne Wpisy

MrSzakal +427
Yeti po latach znowu w finale i nawet go wygrał :D
#1z10
#1z10
źródło: polish_save
Pobierz
say-my-name +51
Milka 100gram za 8zl. To juz dawno k---a przestało być śmieszne co się dzieje z cenami w tym śmiesznym kraju. #panstwozdykty #inflacja
źródło: Zdjęcie z biblioteki
Pobierz




Jak to się liczyło te wskaźniki? Poniższy kod ma prawo działać?
Wychodzę z założenia że inkrementuję wskaźnik aż dotrę do NULLa kończącego ciąg znaków.
void UART_print(const uint8_t *str) {while(*str++)
UART_putc(*str);
}
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
@msgreen: to z giwazdką czy bez, bo zgłupiałem już xD
while (*str) { bo patrzysz na znak wskazywany
put_c( *str ) bo używasz znaku wskazywanego
++ str; samo str, bo tu pracujesz naprawdę na adresie pamięci (aby go zwiększyć) a nie na jakimś znaku np na literze A. ++(*str) by zwiększało wskazywaną aktualnie literę np literę A na B.
zrób
doDoszedłem do rozwiązania
void UART_print(const uint8_t *str) {by powtarzał dopóki adres pamięci nie jest zerowy.
No, pora iść spać ʕ•ᴥ•ʔ