16. april 2004 - 09:34Der er
10 kommentarer og 2 løsninger
serielforbindelse - itoa
Når dette vises i min hyperterminal skriver den kun et tegn ud, har på fornemmelsen at det er det første tegn i feks 78 så vises der et 7 i hyperterminalen.
(kadancen aktiveres hvergang jeg trykker på en knap som simulere en pedalomdrejning)
Det har jeg også prøvet med, Har lige tjekket det ER kun første tegn der udskrives, dvs der sendes kun første tegn i kadancen over til hyperterminalen. hmmmm prøver lige igen med char[]
Nej det virker ikke den skriver stadig kun første tegn. Hvad mener du med 'allokeret memory til itoa'.
Prøver med en integer i stedet, det virker nemlig. Kan bare bedst lide at lave det til en streng da jeg så kan sende både 'kadance, distance, hastighed' i en streng adskilt feks af en # istedet for tre gange en integer.
Altså, hvis det er tal, hvorfor så ikke sende dem som tal? Det fylder jo mindre og giver derfor mindre belastning og går hurtigere...
Men det jeg siger mht. itoa er: itoa allokerer ikke hukommelse til den formaterede streng, det skal du selv! Altså er det ikke nok at give metoden en char* som input, den skal rent faktisk pege på noget memory metoden kan lægge resultatet i.
Fik det ikke til at virke med char[] og char*. men jeg skriver bare cout<<nykadance<<"#"<<enAndenVariabel<<"#"; (er overloadet). så selvom der sendes som en integer på den ene side af serieforbindelsen så modtages det automatisk som en streng på den anden side
hhhmmmmm ja det kan godt være, for jeg har et java program som modtager strengen og java laver sikkert et eller andet, så det er muligt at lave strengen om til en 'streng'
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.