Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Was bedeutet diese Zeile in C++? (https://www.delphipraxis.net/18684-bedeutet-diese-zeile-c.html)

Virchov 23. Mär 2004 09:49


Was bedeutet diese Zeile in C++?
 
Moin, Allerseits!
Kleene Frage:

Was bedeutet in c++ folgende Zeile?
Wird es hier ein Array definiert und dessen variable einen Wert 0 zugschhrieben?

int Histogram[LENBYTE]={0};


Vielen Dank!

Jörn 23. Mär 2004 09:52

Re: Was bedeutet diese Zeile in C++?
 
Bin mir absolut nicht sicher weil ich kein C++ kann, aber ich denke das der Code die Variable LENBYTE durch abschneiden der Nachkommastellen in eine Ganzzahl/Integer umwandelt, wenn die Anweisung fehlschlägt ist das Ergebnis null

EDIT was sabbel ich hier für nen Stuss... kann gar nicht passen, wer lesen kann ist klar im Vorteil... keine Ahnung, was es nun genau macht, aber das mit Ganzzahlumwandlung passt auf jeden Fall!

Tyrael Y. 23. Mär 2004 09:55

Re: Was bedeutet diese Zeile in C++?
 
Ja,
es wird ein Array of int deklariert und dem Feld mit dem Index LENBYTE(wird ne Konstante sein, da Konstanten überlicherweise in c++ groß geschrieben werden) die Zahl 0 zugewiesen.

Da es gerade deklariert wird, wird wahrscheinlich LENBYTE 0 sein.


@Jörn :wiejetzt: :gruebel:

Jörn 23. Mär 2004 09:56

Re: Was bedeutet diese Zeile in C++?
 
Na gut *gg*
Sollte mich aus so was raushalten, wenn ich nix davon verstehe... :duck:

Virchov 23. Mär 2004 09:57

Re: Was bedeutet diese Zeile in C++?
 
Danke, aber ich glaube doch, es machht was ganz anderes. Na jut. :)

Virchov 23. Mär 2004 10:01

Re: Was bedeutet diese Zeile in C++?
 
Danke Tyrael!

Könntest du mir einen Tip geben, wie das in D auszusehen hat?

Also ich hab folgendes gemacht:

Delphi-Quellcode:

var LENBYTE: integer;
 Histogram: array of integer; //= {0};           //Brightness Histogram for this   frame
  Histogram[LENBYTE]:=0;
geht aber nicht... :(

NicoDE 23. Mär 2004 10:08

Re: Was bedeutet diese Zeile in C++?
 
Zitat:

Zitat von Virchov
Was bedeutet in c++ folgende Zeile?
Wird es hier ein Array definiert und dessen variable einen Wert 0 zugschhrieben?

int Histogram[LENBYTE]={0};

Dort wird ein Array mit LENBYTE Elementen aus Integern deklariert und das erste Element mit 0 initialisiert.
Delphi-Quellcode:
var
  Histogram: array [0..LENBYTE - 1] of Integer;
begin
  Histogram[0] := 0;

Tyrael Y. 23. Mär 2004 10:13

Re: Was bedeutet diese Zeile in C++?
 
Es handelt sich höchstwahrscheinlcih um ein dynamisches Array, da ein Array mit einem Feld und dem Wert 0 in diesem Feld ziemlich wenig Sinn hätte...

also...

Delphi-Quellcode:
const LENBYTE = 0;

...

var
 Histogram : array of Integer;
begin
  SetLength(Histogram, 1);
  Histogram[LENBYTE] := 0;

...
end;
im weiterem Programmablauf musst du entsprechend dem c++ Code das Array mit SetLength vergrößern.

Virchov 23. Mär 2004 10:21

Re: Was bedeutet diese Zeile in C++?
 
vielen Dank! :lol:

Dannyboy 23. Mär 2004 10:22

Re: Was bedeutet diese Zeile in C++?
 
Moin, ich ärgere mich mit beiden Sprachen rum und übersetze das so:
Delphi-Quellcode:
CONST LENBYTE = <irgend ein integer wert>;
Histogram : Array[0..LENBYTE-1] of Integer; // Die Arrays in C++ fangen bei 0 (Null) an!
begin
  Histogram[LENBYTE]:=0; // Definition in Delphi so
end.
Nachtrag:
An Deinen Codeschnippseln ist NICHTS dynamisch. Es ist ein statisches Array, ergo
nix mit SetLength, etc.

GRUSS

DANNYBOY


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:59 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz