[AvrGCC] Jak zapisac znak specjalny

Loading thread data ...

roxy pisze:

Nie jestem guru od AvrGCC, ale w języku C od zawsze istniał zapis _ósemkowy_ \000, na przykład Twoje \xdf będzie wyglądać \337.

Pozdrowienia, MKi

Reply to
MKi

roxy pisze:

zamiast "\x34\x37\xdf" może spróbuj "\x34""\x37""\xdf"

Pozdr. MD

Reply to
Marcin

Użytkownik Marcin napisał:

W WinAVR (a dokładnie w PN) normalnie wstawiam znak specjalny przez lewy Alt + (kod ASCII wystukany na klawiaturze numerycznej). W kodzie źródłowym pojawia się jakiś śmieszny znaczek, ale w wynikowym jest to co trzeba.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Użytkownik roxy napisał:

Powinno działać tak jak piszesz. Jest jedno ale, jeśli używasz znaku specjalnego w hex bezpośrednio przed literą z zakresu A-F to tę literę też musisz zapisać jako kod np. w Twoim przypadku "Temperatura

15\xA7\x43". Druga rzecz (tego akurat nie jestem na 100% pewien) być może trzeba też używać dużych liter w kodach hex.

pozdrawiam

Piotrek

Reply to
max441

max441 pisze:

Nie trzeba aż tak cudować, wystarczy zakończyć ciąg znaków cudzysłowem i już można rozpocząć kolejny, np: printf ("Temperatura 15\xA7" "C");

Wielkość liter w kodach hex jest bez znaczenia.

Reply to
Adam Dybkowski

roxy pisze:

BTW: Dla lepszej przejrzystości kodu warto od razu zdefiniować np.: #define DEG_CHAR "\xDF" a może i dodatkowo: #define DEG_CENT DEG_CHAR "C" po czym używać w programie w ten sposób: printf ("Temperatura %d" DEG_CENT, temp);

Reply to
Adam Dybkowski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.