Bitaddition_Array
-
Hallo, ich hätte mal eine Frage.. Ich bin jetzt zar draufgekommen dass ich es wahrscheinlich auf einem anderen Weg lösen werde, aber rein aus interesse wärs klasse wenn ihr mir erklären könntet warum mein programmteil nicht funktioniert.
void add(bool bArray[argr]) { int i; bool vergleichsV=1; for(i=0;i<argr;i++) { vergleichsV = (vergleichsV & bArray[i]); if(vergleichsV==0) { bArray[i]=1; } if(vergleichsV==1) { bArray[i]=0; } } }
das argr ist nur eine globale variable, das ganze programm ist als unterprogramm geschrieben.
Wenn jmd. weiß warum das Zeug nicht geht wäre ich dankbar!
Es sollte im prinzip nur das Array (als ganzes gesehen) bitmäßig addieren.vielen Dank schon einmal
the_oesi
PS: sollte irgendjemand schoneinmal so etwas schon gemacht haben; sorry, suche wurde angeschmissen, aber ohne große Erfolge...
einen schönen Abend
-
Was heißt denn "das Array (als ganzes gesehen) bitmäßig addieren"? Aus deinem Code wird das leider nicht ersichtlich.
-
Mir ist auch nicht klar, was du erreichen willst.
So wie der code im moment aussieht, denke ich das er jedes boolean aus dem array negiert.
-
Wie kann man etwas mit sich selber addieren?
Wenn du nur ein Bool-Array haben willst, auf das die Operatoren &, |, ~, !, usw. erlaubt sind, dann schau dir mal std::bitset (aus der Standardbibliothek) an. Wenn du es dynamisch haben willst (was deiner Funktionssignatur nach nicht so ist), dann wäre boost::dynamic_bitset etwas für dich.