![]() |
AW: Konvertierung von C nach Delphi
Zitat:
|
AW: Konvertierung von C nach Delphi
Zitat:
Ist wohl eher das Zweite?
Delphi-Quellcode:
for var i := 0 to 1023 do // das VAR im neusten Delphi, aber muß man nicht so machen, nur weil es in dem C-Code auch so gemacht wird
tl.frequency[0][i] := tl.frequency[1][i] = Byte(Min(255, fft[i] * 512) * 25);
Delphi-Quellcode:
for var i := 0 to 1023 do begin
tl.frequency[0][i] := Byte(Min(255, fft[i] * 512) * 25); tl.frequency[1][i] := tl.frequency[0][i]; end; |
AW: Konvertierung von C nach Delphi
Zitat:
Delphi-Quellcode:
if (x = x1) then
und (=)
Delphi-Quellcode:
x := x1;
Danke dir werde es mal testen. |
AW: Konvertierung von C nach Delphi
Noch eine Kleinigkeit: den Byte Array kann man evtl. auch durch den in SysUtils vordefinierten TBytes Datentyp ersetzen.
|
AW: Konvertierung von C nach Delphi
Zitat:
Delphi-Quellcode:
Den Record kann ich nicht mal so eben umschreiben der ist vorgegeben.
TimedLevel = record
frequency : array [0..1, 0..SA_BUFFER_SIZE-1] of byte; waveform : array [0..1, 0..SA_BUFFER_SIZE-1] of byte; state : integer; timeStamp : int64; end; so gehts..
Delphi-Quellcode:
in C kann man das auf byte casten in Delphi nicht das verlangt round oder Trunc warum auch immer.
for var i := 0 to 1023 do
begin tl.frequency[0, i] := Trunc(Min(255, fft[i] * 512) * 25); // Byte geht nicht. fft ist single tl.frequency[1, i] := tl.frequency[0, i]; end; |
AW: Konvertierung von C nach Delphi
Egal, da die Daten sowieso manuell reingefüllt werden, also von dir und deinem Code, also kännte man es auch ändern, falls man es für nötig hielte.
[edit] sah erst so aus, aber wollte nur nochmal schnell nachsehen wie groß SA_BUFFER_SIZE ist und ob man das ALLES auf dem Stack haben wöllte, und dann fand ich ![]() |
AW: Konvertierung von C nach Delphi
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz