programowania C, problem zaliczania string

S

siongboon

Guest
Hi everyone,

Mam następujący problem ten ciąg cesja z C18 mikroczipowego kompilatora.

Na przykład, jestem w stanie przypisać ten sposób

const rom unsigned char badania []={" GMxxx ");

jakie pojawiają się w pamięci G, M, x, x, xKiedy to robić w inny sposób, danych w pamięci staje się

const rom unsigned char badania []={" GMxxx ", 0x00);

jakie pojawiają się w pamięci 0x0E, ...

Mam nadzieję, że jeśli ktoś może mi wyjaśnić co się dzieje?Mam nadzieję, że append 0x0D 0x0A na końcu łańcucha ...
Czy jest jakiś sposób mogę to zrobić w C18 kompilatora.
Mam tu na myśli ten następujące dane pobierane, ale nie jest to, co chcę.

const rom unsigned char badania []={" GMxxx ", 0x0D, 0x0A);Każde rozwiązanie alternatywne?

Thank you so much.
Siong Boon

 
po prostu spróbować:

const rom unsigned char badania []={" GMxxx \ r \ n ");

 
Hi aProgrammer,

To działa.Dziękuję bardzo.

Z pozdrowieniami,
Siong Boon

 
I don't see how char testing[] = ("Gmxx", 0xa, 0xd); would even compile.

To nie w moim kompilatora.Jesteś nadając jej 5 bajt z wartością "Gmxx" kiedy oczekuje jednego bajtu.Nie można mieszać ciągi znaków z poszczególnych znaków.char badania []={' G "," m "," x "," x ", 0xd, 0xa,'0 '); powinna również pracować

 
Dzięki jhbbunch,

Jest to również rozwiązanie Jestem szukasz, dla ASCII.
Dziękuję.

 
Dziękujemy za odpowiedź.I powinien pamiętać, że popełnił błąd w kodzie.Ostatnia wartość powinna wynosić 0,
a nie "0" (ASCII 0).0 oczywiście jest kończąca ciąg znaków w kodzie ASCII 0 C. jest printable charakter.

 
Do korzystania z ciągów należy nagrać dane ROM niż wykorzystanie ciągów programowania w języku C

 

Welcome to EDABoard.com

Sponsor

Back
Top