niedrigstwertiges bit in einem String invertieren
-
Hallo, wie kann ich denn das niedrigstwertige bit in einem String inverieren. Ich bin noch ein Anfänger und bitte um eine einfache Erklärung.
vielen dank
-
Bist du sicher, dass du String meinst, also eine Zeichenkette? Was soll denn da das niedrigstwertige Bit sein? Das letzte Bit vom letzten Zeichen?
Wie auch immer: Du kannst das letzte Bit eines beliebigen Integertyps (also auch von Zeichen, du musst dann nur das letzte aus der Zeichenkette nehmen) invertieren, indem du den Wert mit 1 ver-XOR-st. edit: Bitweises XOR wird in C übrigens durch den ^-Operator repräsentiert.
-
ich hab mich vertan, ich möchte in jedem byte in einem string das niedrigswertige bit invertieren
-
Dann machste die Aktion eben auf jedem Byte in dem String.
-
Wie gesagt, ich bin da eben noch ein Anfänger und habe kaum ahnung, wie ich sowas machen soll
-
Mit einer Schleife.
Und vielleicht solltest du ein gutes Buch lesen, damit du eben nicht mehr Anfänger bist. Anscheinend hast du ja schon etwas sehr konkretes vor. C ist nicht so komplex. Wenn du noch nicht einmal so weit bist, dass du Schleifen kennst, dann kannst du in zwei Wochen die Grundlagen soweit lernen, dass du einfache Sachen wie diese ziemlich gut selbstständig programmieren kannst. Gefahr ist hier nur die gewöhnungsbedürftige Zeichenkettenbehandlung in C, bei der viele Anfänger erst einmal auf die Schnauze fallen. Aber die ist auch zu komplex, um sie in einem Forenbeitrag mal eben zu erklären
.
Ansonsten ist halt etwas schwierig, dir etwas zu erklären, solange dir die Grundlagen fehlen. Du verstehst dann eben nicht, wovon ich überhaupt rede und ich weiß nicht, wie ich es erklären soll, ohne die Grundkonzepte von C zu benutzen.
-
For erstes bis letztes Byte
Byte ^= 1;
-
gut, aber wie kann ich denn die einzelnen bytes der strings ausgeben, wenn ich ein array mit den string-adressen habe:
char *string_list[]
-
int Stringindex = 0; int Zeichenindex = 0; putchar(string_list[Stringindex][Zeichenindex]);
-
Theseus schrieb:
gut, aber wie kann ich denn die einzelnen bytes der strings ausgeben
Suche dir doch ein Tutorial, im Internet gibt es viele.