Zum Inhalt springen

ANSI in ASCII umwandeln


bfl0w

Empfohlene Beiträge

Hallo zusammen,

ich habe ein kleines problem bei dem ich jetzt nach 2 stunden völlig erfolgloser recherche einfach überhaupt nicht weitergekommen bin. und zwar muss ich eine Zeichenfolge die in ANSI kodiert ist in ASCII umwandeln und dann ausgeben.

bevor ich jetzt lange erkläre wie das so aussieht stelle ich mal den code online:


#include <stdio.h>


/*

 INCOMPLETE function to decode the destination storage

*/

char* decode(char*,int,int,int)

{

                        /*EDIT: getchar ist von mir noch drinnen gestanden*/

    return array;

}


int main()

{

    //Declares an array with two rows each 100 characters long


    char destinationStorage[2][100];

    //Fills the two lines of the array with the different ANSI coded characters

    //sprintf works like printf. It writes the result not on console but in a given array.


    sprintf(destinationStorage[0],"Bssjwbm;!Qmbofu;Sjtb!Dppse;59023O!27033P!Ujnf!23;42!Ebuf;!15/17/3199");

    sprintf(destinationStorage[1],"Eftujobujpo;!");


    //Start of exercise...

    return 0;

}

in der anleitung steht, dass ich vom ascii code jedes zeichens jeweils den wert 1 abziehen muss, damit die zeichenfolge anschließend richtig ausgegeben wird.

das ganze muss ich oben in der decode funktion realisieren vermute ich mal.

bin kurz vorm verzweifeln weil ich einfach null plan hab wie das jetzt funktionieren soll. der einzige hinweise, der mir dazu gegeben wurd ist, dass "ich mich jetzt ja mit pointern und arrays auskenne" ... das hilft mir aber beim besten willen nicht.

also hoffentlich kann mir jemand von euch helfen!!

Link zu diesem Kommentar
Auf anderen Seiten teilen

in der anleitung steht, dass ich vom ascii code jedes zeichens jeweils den wert 1 abziehen muss, damit die zeichenfolge anschließend richtig ausgegeben wird.
Dann hat das mit einer Umwandlung ANSI -> ASCII gar nichts zu tun. Du musst einfach nur jedes Zeichen um 1 verringern.

bin kurz vorm verzweifeln weil ich einfach null plan hab wie das jetzt funktionieren soll.

Weißt du, wie man auf die einzelnen Elemente eines Arrays zugreift?

Weißt du, wie man eine Variable um 1 verringert?

Das ist eigentlich alles, was du brauchst, dann noch eine Schleife drum und fertig.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dann hat das mit einer Umwandlung ANSI -> ASCII gar nichts zu tun. Du musst einfach nur jedes Zeichen um 1 verringern.

Weißt du, wie man auf die einzelnen Elemente eines Arrays zugreift?

Weißt du, wie man eine Variable um 1 verringert?

Das ist eigentlich alles, was du brauchst, dann noch eine Schleife drum und fertig.

weiß ich eben leider nicht...

ich vermute, dass es irgendwie mit einem pointer funktioniert. wie ich dann aber genau den wert verringern kann ist mir im moment ein rätsel...

und vor allem was mich ein wenig verunsichert ist folgende angabe:

char* decode(char*,int,int,int)

ich weiß einfach nicht wofür die 3 integer sein sollen...

hat da jemand eine idee?

Link zu diesem Kommentar
Auf anderen Seiten teilen

weiß ich eben leider nicht...

Auf die Elemente eines Arrays greift man mit dem Indexoperator [] zu: a. Die Variable a kann hier ein Array oder Zeiger sein, b ein Integer.

ich vermute, dass es irgendwie mit einem pointer funktioniert. wie ich dann aber genau den wert verringern kann ist mir im moment ein rätsel...

Um eins verringern kannst du so: --a

und vor allem was mich ein wenig verunsichert ist folgende angabe:

char* decode(char*,int,int,int)

ich weiß einfach nicht wofür die 3 integer sein sollen...

hat da jemand eine idee?

Keine Ahnung, meiner Meinung nach sind die, so wie du die Aufgabe beschrieben hast, überflüssig. Gibt die Aufgabestellung nicht mehr her? Falls nicht, würde ich die einfach ignorieren.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...