!!!Achtung!!!Actung!!! wer will c konig werden!!!!
-
und was verstehste an den fehlermeldungen ned...?
-junix
-
z.b.
while(i<n)
{
(*c+k)=(*a+i);
++i;
++k;
}
error C2059: syntax error : 'while'nun solage i<k richtig ist wiederhole, okey und wo ist der sintagtische fehler??
ich mus nicht schreiben while((i<n)==1) da das das gleiche wie das obige ist.
-
Eventuell schaust du mal ne Zeile vorher?
-
und das swap ???
warning C4013: 'Swap' undefined; assuming extern returning int
Swap((*pArray+j),(*pArray+(j+1)));
error C2371: 'Swap' : redefinition; different basic types
void Swap(int *Num1, int *Num2)
{
//Dilosh metablhton
int Temp;
//
Temp=0;//Kurio Programma
Temp=*Num1;
*Num1=*Num2;
*Num2=Temp;
}
-
das heist doch
Swap((*pArray+j),(*pArray+(j+1)));
wenn ich so arbeite wie der compiler es dolmetscht ich mache vom ende eliptische bewegungen nach vornealso
; bedeutet befehl
() zuerst mus ich das berchne
() zuerst die inere klamer
1 ne zahl
+1 addiere die zahl 1
j+1 adiere die zahle 1 zu j
+(j+1) adiere das ganze zu
pArray+(j+1)) adier das j+1 zum pArray wo pArray ein pointer ist so manipuliere ichdie adress
*pArray+(j+1)) wo bei jetzt nach der adition der adrese die zahl aufgerufen wird das der pArray auf der possition hat.das kleiche auch fur das andere also
also ist swap(eine zahl,eine zahl) aber er übergibt keine adresse wie mache ich das??? wenn ich dafor & tuhe also (Swap(&(*pArray+j),&(*pArray+(j+1)));)bekomme ich mehr fehler
also übergebe ich die zahl an swap da isz der fehler aber wie behebe ich ihn
-
Man hey junix deine hilfe ist die beste überhaupt der man bekommt kleine tipps aber du veretst nicht die lössung deshalb bekommst du von mir
hoch. Schade das du weg bist
-
schau nochmals über die klammernpaarung...
-
cheff kommt nichts ich schreibe Swap((pArray+j),(pArray+(j+1))); ber compiler sagt falsch
-
Du hast in swap, zwei Pointer als Parameter du übergibst als Argumente aber zwei Integer
-
wiso pArray ist doch shon ein zeiger er übergibt also die adresse(p.s. ich tue vor ein pointer immer ein pdammit ich weis das es ein pointer ist wie z.b. pArray ist ein pointer auf dem array).
Swap((pArray+j),(pArray+(j+1)));=>ubergibt die adrese j und adrrese j+1
-
Das schon, aber nicht das Posting weiter oben da steht ein * davor.
Swap (pArray+j,pArray+j+1);
sollte aber funktionieren wenn pArray ein Pointer ist.
-
Und noch eins wiso funktionier eigentlich nicht (*c+k)=(*a+i) das aber funktionier das (c+k)=(a+i)!!! wo doch es das gleich ist
-
tuts aber immer noch nicht muss ich swap zur header datei definieren oder in der c datei ich habe sie in der Header richtig so oder??
-
gibt es vileicht eine funktion in einer von compiler bereitgestelten funktion die swap heist da redifination irgentwo in der fehlermeldung steht???
-
ah! wenn man über fehlermeldungen nachdenkt, kommt man zur richtigen
lösung!
-
nachdenkt
-
Nach überlegung bin ich zu folgendes kekommen:
a)swap wirt von einer anderen headfile genutzt
oder
b)ich muss swap nicht in der header datei einbinden sondern in der .c datei
oder
c)da pArray ein zeiger ist und ich es in Ar1 kopiere ist ar1 ein zeiger auf ein zeiger. Aber da bin ich mir nicht sicher was soll ich den macher???bitter um hilfe
-
Master User schrieb:
[...]a)swap wirt [...]
Wo ist denn das Restaurant "swap"? Da würd ich gern mal vorbei schauen beim Swap Wirt....
Master User schrieb:
Aber da bin ich mir nicht sicher was soll ich den macher???
Statt der "Wer wird millionär"-Fragen zu konzipieren dich mal darauf konzentrieren zu testen ob eine deiner Theorien funktioniert? Oder vielleicht einfach mal die Sprache "C" lernen?... das wärn mal so meine beiden primären Lösungsvorschläge....
-junix
-
Master User schrieb:
Und noch eins wiso funktionier eigentlich nicht (*c+k)=(*a+i) das aber funktionier das (c+k)=(a+i)!!! wo doch es das gleich ist
Falsch, das ist eben nicht das gleiche! Schau dir mal die Reihenfolge der Operatoren an. Das ist wie in der Mathematik: Punkt vor Strich
-
habs jetzt (*a+i) mach einfach und mathematisch ausgedruckt A+J=5 wenn A=3 und I=2 ist
. Man nachdenken tut wirklich gut!