Probleme mit char im struct (Daten werden verfälscht)
-
Hallo, ich folgenden einfachen struct:
struct data {
int zaehler;
char paket[GROESSE];
};
sruct data dat;Nun habe ich eine Schleife in der ich Daten von der Soundkarte als Char erhalte bzw. diese in einen Buffer geschrieben werden. Wenn ich diesen Buffer sofort wieder ausgebe ist alles in Ordnung. Versuche ich aber die Daten in mein struct zu kopieren, und gebe direkt die Daten aus dem struct aus, so sind die Daten nicht mehr in Ordnung.
while(...){ read_audio(buff, GROESSE); //buff ist char dat.zaehler=zahl; strcpy(dat.paket,audio_buff); write_audio(dat.paket,GROESSE); //Hier sind sie write_audio(buff,GROESSE); //unterschiedlich }
Warum ist dat.paket nicht gleich buff??? Was muss ich tun, damit im struct der korrekte Inhalt meines buff steht?
-
Bist du dir sicher, dass die Daten von der Soundkarte überhaupt strings sind? Nicht einfach nur Rohdaten? Weil dann solltest du eher memcpy() verwenden.
-
Was da rein und rausgehen muss sind chars. Selbst wenn ich memcpy nehme haut es nicht hin.
-
Das Problem lag mal wieder wo ganz anders...
Danke TactX für deine Mühe.
-
wo lags denn?