AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

pointer to an array in D und C++

Ein Thema von Virchov · begonnen am 19. Mär 2004 · letzter Beitrag vom 19. Mär 2004
Antwort Antwort
Seite 1 von 2  1 2      
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#1

pointer to an array in D und C++

  Alt 19. Mär 2004, 10:29
Moin!

Ich habe versucht, diese funktion in deplhi zu übersetzen. Alles klappt in die Zeile BinImgPlus[idx]=0; Kann man pointer auf array in Delphi so nicht deklarieren? Ich möchte aber in Delphi die array-Struktur beibehalten. Geht das?

Vielen Dank!

Delphi-Quellcode:

int BinImgMatchProMile(
  const bool* BinImg1,
  const bool* BinImg2,
  int nElements,
  bool* BinImgPlus,
  bool* BinImgMinus)
{
  //local declares
  register idx, MatchCounter=0;

  //calculations
  for (idx=0; idx<nElements; ++idx){
    //local initialisation
    BinImgPlus[idx]=0;
    BinImgMinus[idx]=0;
    //Find out what to do for this element
    if (BinImg1[idx]==BinImg2[idx])
      //Got a match in case BinImg1 == BinImg2
      MatchCounter++;
    else if (BinImg1[idx] && (!BinImg2[idx]))
      //Got positive difference in case BinImg1 > BinImg2
      BinImgPlus[idx]=1;
    else if (BinImg2[idx] && (!BinImg1[idx]))
      //Got negatice difference in case BinImg1 < BinImg2
      BinImgMinus[idx]=1;
    //endif
  }

  return (int)(((float)MatchCounter/(float)nElements)*1000.0);
}
  Mit Zitat antworten Zitat
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#2

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 10:34
Sorry Ich meinte - alles klappt BIS in die Zeie!
  Mit Zitat antworten Zitat
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#3

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 11:13
Scheisse!

Könnte mir vielleicht doch einen kleinen Tipp geben? Ich bitte nicht darum, die Funktion umzuschreiben, blos wie macht man das in D mit pointer auf array?
  Mit Zitat antworten Zitat
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#4

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 11:39
So ein Mist, alta. Ick wer gleich verrückt! Son Schheissforum!
  Mit Zitat antworten Zitat
Benutzerbild von BluesKid
BluesKid

Registriert seit: 2. Sep 2003
Ort: NRW
133 Beiträge
 
Delphi 2005 Professional
 
#5

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 11:39
Moin moin

Also, ganz sicher bin ich mir da jetzt auch nicht aber versuch doch mal Folgendes:

Delphi-Quellcode:
.
.
.
  type myArray = array[0..10] of String;
  var aArray : myArray;
      myPointer : ^myArray;
.
.
.
begin
  aArray[1] := 'Hallo Welt';
  myPointer := @aArray;
  showmessage(myPointer^[1]);
end;
.
.
.
oder hab ich dich da verstanden-Miss

schönen Gruß

Sam
  Mit Zitat antworten Zitat
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#6

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 11:43
Danke Dir!

Ichh glaube, du verstandest michh schon richtig. In C wird als übergabeparameter bool* BinImgPlus,
bool* BinImgMinus deklariert und dann, wie du siehst, als arrays verwendet. Delphi lässt das leider nicht. Und deine Lösung mag schon richtig sein, man hat mir sonst auch geraten, Einen Array-Typ zu definieren. ..
  Mit Zitat antworten Zitat
Virchov

Registriert seit: 15. Mär 2004
Ort: Bäärlin
109 Beiträge
 
#7

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 11:53
Geht nicht. Naja, egal , ich probiere mal weiter.
  Mit Zitat antworten Zitat
roderich
(Gast)

n/a Beiträge
 
#8

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 12:00
Zitat:
So ein Mist, alta. Ick wer gleich verrückt! Son Schheissforum!
nicht das Forum ist scheiße, sondern Deine Problembeschreibung (und vermutlich Dein Code).

Roderich
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#9

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 12:47
Zitat von Virchov:
Son Schheissforum!
Mäßige Dich bitte.

Delphi-Quellcode:
type
  PBooleanArray = ^TBooleanArray;
  TBooleanArray = array [0..High(Integer) - 1] of Boolean;

function BinImgMatchProMile(const BinImg1, BinImg2: TBooleanArray;
  nElements: Integer; out BinImgPlus, BinImgMinus: TBooleanArray): Integer;
  cdecl;
var
  idx: Integer;
  MatchCounter: Integer;
begin
  Result := 0;
  if (nElements > 0) then
  begin
    MatchCounter := 0;
    // calculations
    for idx := 0 to nElements - 1 do
    begin
      // local initialisation
      BinImgPlus[idx] := False;
      BinImgMinus[idx] := False;
      // Find out what to do for this element
      if BinImg1[idx] = BinImg2[idx] then
        // Got a match in case BinImg1 = BinImg2
        Inc(MatchCounter)
      else if BinImg1[idx] and not BinImg2[idx] then
        // Got positive difference in case BinImg1 > BinImg2
        BinImgPlus[idx] := True
      else if BinImg2[idx] and not BinImg1[idx] then
        // Got negatice difference in case BinImg1 < BinImg2
        BinImgMinus[idx] := True;
    end;
    Result := Int64(MatchCounter) * 1000 div nElements;
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#10

Re: pointer to an array in D und C++

  Alt 19. Mär 2004, 12:53
@nicoDE,
wenn ich es gekonnt hätte, hätte ich unwissend gelassen.

@virchow
beiße nie den Herrn der dich füttert.



raik
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:55 Uhr.
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