Dovolte mi otázku. Mám pole, které obsahuje data set od 0 do 10 a za nimi vždy následují data od 0 do 200;
například:
set1 10
nebo
set3 120
kde "set" značí co nastavuji a čislo za tím udává, na co potřebuji nastavit (třeba výstup), vždy ukončené \n.
Ale není mi jasné, jak z toho vybrat první část a druhou číst. Obojí je ke všemu ve formě string.
Takže musím z pole vyextrahovat pole[0]~pole[3], sloučit a porovnat se stringem. Toto by ještě šlo.
Ale jak vyexportovat ten zbytek nevím. Proto jestli někdo víte, určitě uvítám jakékoli nakopnutí. Děkuji
-- Spojený príspevok 28 Dec 2014, 12:46 --
Tak už jsem trošku pokročil. Ještě to není dobře, mám tam chybu:
deklarace
Kód: Vybrať všetko
char pole[128]; char pom_pole[128]; char string[6];
Kód: Vybrať všetko
// na seriovku posle prijaty retezec
uart_puts(pole);
//vyeportovani prvniho stringu
pom_pole[0] = pole[0];
pom_pole[1] = pole[1];
pom_pole[2] = pole[2];
pom_pole[3] = pole[3];
pom_pole[4] = '\0';
strcpy(string, pom_pole);
sprintf(buffer, "string: %s\n", string);
uart_puts(buffer);
//vyeportovani cisla
pom_pole[0] = pole[5];
pom_pole[1] = pole[6];
pom_pole[2] = pole[7];
pom_pole[4] = '\0';
strcpy(string, pom_pole);
sprintf(buffer, "string: %s\n", string);
uart_puts(buffer);
A výstup z terminálu je správný až na tu hloupou jedničku, kterou mi vrací a nevím proč.