tausender hunderter zehner aufteilen?

Gast #821274
Lesenswert?

habe ich hinbekommen besten dank.


noch eine frage

wie kann ich einen datensatz aufsplitten.

z.b


$WI;1;230;009;1012;1;12*12

in einer struct benötige ich

rx_data.windrichtung=230
rx_data.windgeschwindigkeit=9
rx_data.luftdruck=1012
rx_data.tempvorzeichen=1(+) /0 (-)
rx_data.temperatur=12



danke
Persönliche Seite #821373
Lesenswert?

1
#include <string.h>
2

3
int split(char* zeile, char* trenner, char teil[][80], int maxStrings)
4
{
5
  int index = 0;
6
  char* token = strtok(zeile, trenner);
7
  
8
  while(token != NULL && index < maxStrings)
9
  {
10
    strcpy(teil[index++], token);
11
    token = strtok(NULL, trenner);
12
  }
13

14
  return index;
15
}
16

17
char str[40} = "$WI;1;230;009;1012;1;12*12";
18
char teil[7][6];
19

20
if(split(str, ";", teil, 7) == 7)
21
{
22
   rx_data.windrichtung= atoi(teil[2]);
23
   rx_data.windgeschwindigkeit=atoi(teil[3]);
24
   rx_data.luftdruck=atoi(teil[4]);
25
   rx_data.tempvorzeichen=atoi(teil[5]);
26
   rx_data.temperatur=atoi(teil[6]);  //Damit 12 drinnen steht, muss der letze String aber 12 lauten. Warum lautet der überhaupt 12*12?
27
}

Gruß Robert

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren